Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Kirill Frolov                        2:5030/827.2   30 May 2003  17:40:47
 To : All
 Subject : [[b]a]sh, '$@' без кавычек --  признак ошибки
 -------------------------------------------------------------------------------- 
 
 аргумента вызываемой программы _без_ _двойных_ _кавычек_ -- признак серьёзной
 ошибки?  Разбиваются же аргументы по словам.
    Меня сильно смущает то, что в /usr/bin каждый n-ый скрипт допускает
 разбиение аргументов командной строки по словам. В результате имена файлов
 или опции с пробелами они не понимают, да и много бед натворить могут из-за
 случайной ошибки. :-( :-/
   Стал смотреть как getopt(1) используется, тоже едва-ли не в большей
 части скриптов та же самая проблема, особо продвинутые позволяют задавать
 опции getopt из командной строки...
    А ещё меня сильно смущает вот такое (из /etc/init.d/proftpd):
 
     if [ "x$RUN" = "xyes" ] ; then
     if [ "x$INETD" = "xyes" ] ; then
     if [ "x$RUN" = "xyes" ] ; then
     if [ "x$INETD" = "xyes" ] ; then
 
    Буква "x" зачем здесь?  Почему нельзя написать "$RUN" = "yes" ?
 То есть написать-то можно и будет работать даже, но в чём же здесь подвох?
   
 -- 
 [ZX]
 --- ifmail v.2.14-tx8.10
  * Origin: A quick brown fox jumps over the lazy dog. (2:5030/827.2)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 [[b]a]sh, \'$@\' без кавычек -- признак ошибки   Kirill Frolov   30 May 2003 17:40:47 
Архивное /ru.linux/38330b0b4ff2.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional