[Comm] Shell quoting and $*
Vitaly Ostanin
vyt на vzljot.ru
Пт Апр 14 18:28:48 MSD 2006
Здравствуйте.
Скажите, пожалуйста, как можно в shell скрипте экранировать
аргументы при передаче в программе? Да, вопрос тупой, однако:
$ touch 'test 1'
$ touch 'test 2'
$ echo 'ls $*' > test.sh
$ chmod +x test.sh
$ ./test1.sh "test 1" "test 2"
ls: test: No such file or directory
ls: 1: No such file or directory
ls: test: No such file or directory
ls: 2: No such file or directory
Следующий вариант скрипта тоже не работает:
unset $arg
while [ "$1" != "" ]; do
arg="$arg '$1'"
shift
done;
ls $arg
$ ./test.sh "test 1" "test 2"
ls: 'test: No such file or directory
ls: 1': No such file or directory
ls: 'test: No such file or directory
ls: 2': No such file or directory
--
Regards, Vyt
mailto: vyt на vzljot.ru
JID: vyt на vzljot.ru
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя : signature.asc
Тип : application/pgp-signature
Размер : 254 байтов
Описание: OpenPGP digital signature
Url : http://lists.altlinux.org/pipermail/community/attachments/20060414/7e21ea78/attachment.bin
Подробная информация о списке рассылки Community