та там такий негатив тяне до Українців.
Роблю лабу =) Хочу вчитися та застряв просто =)Мені потрібно лише перенести два нижні echo в функцію та викликати її , цу така домашка, інакше це вже не я робив і буде не те що треба =(
Отак норм?
usage "Could not find file $1" fi shift doneelse usage "You did not enter one or more filenames"
Повинно бути в функції. А на цьому місті потрібно викликати цю функцію
usage "Could not find file $1"usage "You did not enter one or more filenames"
./myScript qwerty
You did not enter one or more filenames
Could not find file qwerty
емм?рядкиКод: [Вибрати]usage "Could not find file $1"usage "You did not enter one or more filenames"викликають функцію "usage" з рядковим параметром, який і виводиться.Що не так?
usage $1
Питання в тому, що $1 всередині функції приймає значення першого параметра функції, а не скриптаТож тобі все одно якимось чином треба передати переданий параметр :-/Можна викликати функцію так:Код: [Вибрати]usage $1А можна перед тим встановлювати якусь змінну, яку дивитись у функції.Напевно ще існують інші шляхи…
SELECT=0function usage { if [ $SELECT -eq 1 ] then echo -e "usage: $0 filename ...\nERROR: Could not find file $1" fi # if [ $SELECT -eq 2 ] then echo -e "usage: $0 filename ...\nERROR: You did not enter one or more filenames" fi}
else SELECT=1 usage fi shift doneelse SELECT=2 usagefi
Можна ж типу FILENAME=$1, а потім як було
FILENAME=$1function usage { echo -e "usage: $0 filename ...\nERROR:" if [ "$FILENAME" ] then echo "Could not find file $FILENAME" else echo "You did not enter one or more filenames" fi}