This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: stupid spaces in environment vars
Phil Betts wrote:
David Bear wrote on Friday, February 09, 2007 4:56 AM::
Okay, the problem is in quoting in shell scripts, I think.
It is. It's not a Windows problem and it certainly isn't a cygwin problem.
Although spaces occur more often in Windows than on other platforms,
they can and do occur on Unix/Linux for example. Any properly written
shell script must be written with the assumption that a path contains
spaces. If they aren't, at best they are broken, at worst they are a
security risk.
If you're going to write shell scripts, learn to do it right. Learn
the quotation rules, by which I mean both knowing what
they are and UNDERSTAND them.
Windows is only making you more aware of the issues because so many
important paths include spaces. (Quite why anyone would *want* to
create a path with spaces in it, particularly important paths, is
beyond me, but then MS does a lot of dumb things)
As you quite rightly point out spaces (as well as many other troublesome
characters) are allowed in pathnames. As such why anyone would want to
create a path with spaces in it is quite simple - because it's allowed.
Also, because it's more "readable" and finally because in Windows most
people don't mess with the command line where the spaces become
troublesome and must be escaped or quoted.
All that said, when in Cygwin, since I'm in a POSIX like environment, I
seek to make things more Unix like than have them remain Windows like.
As such I usually have the following mounts to change some of those
common troubling important paths to 1) be shorter, 2) more Unix like and
3) not contain spaces:
$ mount -bsf C:/Documents\ and\ Settings /home
$ mount -bsf C:/Program\ Files /apps
YMMV
--
Andrew DeFaria <http://defaria.com>
If God wanted me to touch my toes, he would have put them on my knees.
--
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/