bash - $@ vs shift inconsistent
Dirk Fieldhouse
fieldhouse@logica.com
Mon Feb 14 06:31:00 GMT 2000
I'm not sure that this is a specific CYGWIN issue, but I don't have access to a bash on a machine that allows spaces in filenames (surely the underscore character was invented to avoid these ...)
In bash 2.01.1 (b20.1/W95B), the following sequences which should have identical behaviour do not:
#!/bin/bash
for arg in "$@" ; do
echo "$arg" # splits "arg with spaces" into 3 args
done
#!/bin/bash
while [ "$1" ] ; do
echo "$1" # maintains "arg with spaces" as one argument
shift
done
I haven't tested these against ash, nor with the latest bash release (2.03?), and I would be delighted to hear that this is a historical problem.
I am sure that the second behaviour is correct, especially given the bash manual's description of $@.
--
Dirk Fieldhouse Logica UK Limited
fieldhouse@logica.com 75 Hampstead Road
c=gb;a=attmail;p=logica; London NW1 2PL
o=LOGICA;ou1=UK;s=fieldhouse UK
+44 (20) 7637 9111
- not speaking for Logica
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com
More information about the Cygwin
mailing list