Как проверить правильность количества аргументов (один аргумент). Если кто-то пытается вызвать скрипт, не передавая правильное количество аргументов, и проверяет, действительно ли аргумент командной строки существует и является каталогом.
148
shell
что означает/bin/sh
Ответы:
Перевод: Если число аргументов (численно) не равно 1 или первый аргумент не является каталогом, выведите его в stderr и завершите работу с кодом состояния ошибки.
Более дружественные сообщения об ошибках:
источник
if [ "$#" -ne 1 ] ; then
илиif ! [ -d "$1" ]; then
чтобы увидеть , какой пункт является причиной проблемы.-d
это касается. Если вы хотите добавить отдельную проверку, вы можете использовать ее-e
для проверки существования.-e
возвращает true, если файл существует. Я добавил более дружественные сообщения об ошибках в ответ.cat script.sh
выполнить как показано ниже -
Выход будет как -
источник
Вы можете проверить общее количество аргументов, которые передаются в командной строке с помощью "
$#
" Скажите для примера, мой сценарий оболочки имяhello.sh
Выход будет
hello-world
источник