|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Vladimir Goncharov 2:5020/400 04 Jun 2002 01:00:26 To : Ivan Churkin Subject : Re: bash script -------------------------------------------------------------------------------- Ivan Churkin <Ivan.Churkin@p18.f155.n5015.z2.fidonet.org> wrote: > Hе хочет работать следующая конструкция: Я, наверное, первый буду? > check() { > if [ "$2" != "" ]; then > echo "OK" > else > echo "FAILED" > fi > } > case "$1" in > blah) > check > ;; > esac > Симптомы, если делать не функцией, те оператор if вставить прямо в case то всё > ok, так же он не видит параметры, те $1, $2 следственно постоянно результат > failed.Как боротся? $1,$2 ... в функции - это параметры функции, а не скрипта. Hе замечал, что у функций в шелле нет списка формальных параметров? То есть, в твоем случае надо check вызывать ка check $1 $2 или check $* WBR, Владимир Гончаров ЗЫ: Только я бы написал if [ -z $2 ]; then так оно, наверное и попереносимее будет? -- Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5 * Origin: Talk.Mail.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/648867c744c9.html, оценка из 5, голосов 10
|