Как проверить наличие входного аргумента в сценарии оболочки Bash
Есть три разных способа:
Способ 1: Использование команды «тест»
Команда «test», также известная как команда «[», — это встроенная в Bash команда, которая проверяет различные условия. Одно из условий, которое мы можем проверить с помощью команды «тест», — существует ли переменная или нет. Вот пример кода для проверки существования входного аргумента с помощью команды «test»:
#!/бин/баш
если [ -С '1 доллар' ]
затем
эхо «Отсутствует входной аргумент».
Выход 1
быть
эхо «Входной аргумент существует».
Здесь параметр «-z» используется с командой «test», чтобы проверить, является ли входной аргумент пустой строкой или нет. Сценарий выведет сообщение об ошибке и завершится с кодом состояния 1, если входной аргумент является пустой строкой. В противном случае скрипт продолжит выполнение, ниже я предоставил входной аргумент для кода, поэтому он отображает сообщение о наличии ввода аргумента:
Способ 2: использование переменной «$#»
“$#” В переменной хранится количество входных аргументов, переданных сценарию. Если скрипт ожидает хотя бы один входной аргумент, мы можем проверить, “$#” переменная больше нуля. Вот пример кода, чтобы проверить, существует ли хотя бы один входной аргумент, используя “$#” переменная:
#!/бин/баш
если [ $# -экв 0 ]
затем
эхо «Отсутствует входной аргумент».
Выход 1
быть
эхо «Входной аргумент существует».
Здесь «-экв» оператор используется для проверки того, “$#” равна нулю или нет, и если переменная «$ #» равна нулю, сценарий отобразит сообщение об ошибке и завершит работу с кодом состояния 1. В противном случае сценарий продолжит выполнение, ниже я предоставил и ввел аргумент для кода, поэтому он отображает сообщение о существовании ввода аргумента:
Способ 3: использование опции «-n»
«-н» Опция используется для проверки того, не пуста ли переменная. Мы можем использовать эту опцию, чтобы проверить, существует ли входной аргумент или нет. Ниже я привел пример кода, который проверяет, существует ли входной аргумент, используя функцию «-н» вариант:
#!/бин/башесли [ -н '1 доллар' ]
затем
эхо «Входной аргумент существует».
еще
эхо «Отсутствует входной аргумент».
Выход 1
быть
Здесь «-н» используется для проверки того, не является ли входной аргумент пустым, и если входной аргумент не пуст, скрипт отобразит сообщение об успешном выполнении. В противном случае скрипт отобразит сообщение об ошибке и завершится с кодом состояния 1, ниже я предоставил и входной аргумент для кода, поэтому он отображает сообщение о наличии ввода аргумента:
Заключение
В сценариях оболочки проверка наличия входных аргументов является важным шагом, чтобы убедиться, что сценарий работает должным образом. Мы можем использовать различные методы для проверки наличия входных аргументов, например, с помощью команды «test», переменной «$#» или опции «-n». Применяя эти методы, мы создаем более надежные сценарии оболочки, которые могут обрабатывать входные аргументы.