Date: Sun, 12 Aug 2007 19:57:33 +0400 (GST) From: Rakhesh Sasidharan <rakhesh@rakhesh.com> To: freebsd-questions@freebsd.org Subject: Question on the IFS variable (not a FreeBSD question) Message-ID: <20070812195535.V86618@obelix.home.rakhesh.com>
next in thread | raw e-mail | index | archive | help
Hi, This isn't really a FreeBSD question. But I figure most people on this list would know the answer and so I'm asking. I've tried to get the answer out of Google, but I guess I am not asking it the right question and so not getting much hits. I understand that the default value of the IFS variable in bash is "space, tab, newline". For a script I am playing around with, I want to change IFS to be just newline. I tried the obvious like IFS="\n" -or- IFS='\n' but that doesn't seem to do the trick coz then the letter "n" ends up being the separator. A bit of Google searching got me the solution too. That I must set IFS this way: IFS=$'\n' I did that, and sure enough things work the way I want! So my question is this: how come things work when I set IFS to $'\n' instead of just plain '\n'? I don't recollect seeing such a way of setting variables before, and so I'm curious about it. TIA, Rakhesh
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070812195535.V86618>