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


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Valentin Nechayev                    2:5020/400     16 Apr 2001  23:54:02
 To : Eugene B. Berdnikov
 Subject : Re: shell programming
 -------------------------------------------------------------------------------- 
 
 >>> Eugene B. Berdnikov wrote:
 
 AK>> function test()
 AK>> {
 AK>>   $@;
 AK>> }
 AK>> 
 AK>> test "echo a>b"
 AK>> 
 AK>> При таком вызове перенаправление не работает, то бишь оно честно пишет echo
 a>>>b. Какой раздел man bash читать ?
 EBB>  Hасчет eval. Hо и здесь проявляется ублюдочность bash'a: правильно
 EBB>  надо было бы написать
 EBB>  test: command not found: echo a>b
 EBB>  а этот придурочный bash сплитает аргумент. Hенавижу... :)
 
 Дык rtfm, батенька: $@ - аргумент сплитается (хотя и не так как в случае $*).
 Чтобы не сплитался - надо кавычки добавить:
 
 "$@"
 
 и, несмотря на то, что по форме кажется, что оно все будет в одном аргументе -
 это как раз единственная форма, в которой аргументы передаются точно и без
 искажений. (А чтобы в один - "$*")
 
 Так что повторюсь - rtfm, и не надо наезжать на bash там, где он честен,
 (причем повторяя стандарт на sh), у баша и так проблем море, и собственных,
 и от sh унаследованных.
 /netch
 --- ifmail v.2.15dev5
  * Origin: Lucky Netch Incorporated (2:5020/400)
 
 

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

 Тема:    Автор:    Дата:  
 Re: shell programming   Eugene B. Berdnikov   14 Apr 2001 17:04:54 
 Re: shell programming   Michael Reztsov   15 Apr 2001 13:20:00 
 Re: shell programming   Eugene B. Berdnikov   16 Apr 2001 12:03:41 
 Re: shell programming   Valentin Nechayev   16 Apr 2001 23:54:02 
 Re: shell programming   Eugene B. Berdnikov   17 Apr 2001 14:05:05 
Архивное /ru.linux/9138ae826591.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional