For Loops and Space in Names

Cameron Simpson cs at zip.com.au
Wed Dec 10 02:31:45 UTC 2008


On 09Dec2008 18:53, Dave Ihnat <dihnat at dminet.com> wrote:
| On Wed, Dec 10, 2008 at 11:17:05AM +1100, Cameron Simpson wrote:
| > is totally reliable and does not need $IFS hacking (which amounts to
| > "guess a char I might not see in a filename).
| 
| Hmm...I don't have as much problem with it, but that may be because
| since I started using Unix around 1980, using IFS to parse records has
| been a useful tool.  Something like:
| 
|   SAVIFS=$IFS
|   IFS=:
|   
|   while read INLINE </etc/passwd
|   do

Yes, but I wasn't talking about using $IFS for records (which is just dandy),
I was talking about the earlier example on the page for coping with spaces in
filenames.

BTW, you know that this:

  while read inline </etc/passwd
  do
  ...
  done

will repeatedly read the first line, versus:

  while read inline
  do
  ...
  done </etc/passwd

which reads the lines in sequence? I know you do, but plenty of other
folks won't notice.

Cheers,
-- 
Cameron Simpson <cs at zip.com.au> DoD#743
http://www.cskk.ezoshosting.com/cs/

Try not, do. Do not, try not.   - Yoda




More information about the fedora-list mailing list