This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Read not honouring "-r"?


Hi All,

Gerald, you are gold!

For some reason I expected to see ^M's in the file if it was DOS format.
Opening filesystems.cfg in Ultraedit failed to prompt with "Do you want
to convert filesystems.cfg to DOS format?", so it was DEFINITELY in DOS
format (as if there is any doubt).

Consequently running dos2unix on filesystems.cfg fixed it straight away.

The other responses are very interesting too.

Also - using "cat filesystems.cfg | while read" isn't an option because
we need variables set inside the while loop to be visible outside it (oh
the joys of porting existing Solaris scripts).

Thanks everyone how made suggestions, etc.  Interested to hear about
anything else related.

Best regards,
-doug

-----Original Message-----
From: Williams, Gerald S (Jerry) [mailto:gsw@agere.com] 
Sent: Tuesday, 19 September 2006 11:24 PM
To: cygwin@cygwin.com
Subject: RE: Read not honouring "-r"?

Doug Irwin wrote:
> One would expect a "read -r fs t2 t3" to process this without 
> attempting to expand slashes.  But I can't seem to get this bit 
> working... And I can't seem to find any doco on doing that in Cygwin.
> 
> I've attached the files I am testing with in the hope that someone can

> help me work this out.
> 
> No doubt I have missed something rather obvious.

"-r" has nothing to do with it: CR/LF line endings are the culprit.

This seems to be particularly tied to ksh, and specifically when you use
"<" to redirect a file. If you simply pipe the output of grep to the
while loop, it works. Interestingly, sh, bash, and zsh all give the
behavior you were expecting.

So for the short term, run d2u on filesystems.cfg. If you plan to
continue using ksh, you may want to follow up and try to understand the
discrepancy--there may be an option that allows you to get the behavior
you want (and if not, it may be worth having KSH's behavior changed to
be more consistent with other shells, but that's something for the
maintainer and/or upstream KSH support to decide).

gsw

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]