Скрипт Bash — текстовый файл, содержащий ряд команд, которые последовательно выполняются интерпретатором оболочки в Linux. Сценарии широко используются в Unix-подобных операционных системах для автоматизации задач, управления процессами и выполнения различных операций. Пользователи могут передавать скриптам аргументы, которые представляют собой входные данные или параметры для кастомизации поведения программы.
В этой короткой статье мы покажем Вам три варианта, которые позволят узнать количество аргументов, переданных скрипту, в ОС Linux.
Содержание:
- Проверка количества переданных аргументов с помощью переменной $#
- Проверка наличия определенного аргумента с помощью оператора -n
- Выводы
Проверка количества переданных аргументов с помощью переменной $#
В ОС Linux есть специальные переменные Bash, которые являются предустановленными и содержат информацию об окружении оболочки, выполнении команд и так далее. Одной из таких переменных является $#. В нее записывается количество переданных аргументов сценарию Bash.
Читайте также: Специальные переменные в скриптах Bash.
Пример 1
Напишем скрипт, который проверяет количество переданных ему аргументов:
Принцип действия этого сценария оболочки следующий:
- Если аргументы не переданы (значение
$#равняется нулю), скрипт печатаетNo arguments is Passed. - Если аргументы переданы, выводится количество аргументов.
На скриншоте выше Вы можете увидеть, как работает данный скрипт.
Пример 2
Иногда для корректной работы скрипта ему нужно передать конкретное количество аргументов, не больше или меньше. Напишем код, который проверяет, не равно ли двум количество аргументов, переданных скрипту:
Данный скрипт обрабатывает такие ситуации:
- Если количество аргументов не равно двум, он выводит сообщение
Sorry! The Number of Arguments Must be 2. - Если передано два аргумента, выводится сообщение
Two Arguments are Passed, за которым следуют значения первого и второго аргументов.
Читайте также: 10 полезных советов для написания эффективных bash скриптов в Linux.
Проверка наличия определенного аргумента с помощью оператора -n
В сценариях Bash оператор -n используется для проверки того, не является ли строковая переменная пустой. Для примера узнаем, передал ли пользователь скрипту третий аргумент:
Код работает следующим образом:
- Если третий аргумент есть (
-nпроверяет, не является ли аргумент пустым), то выводится сообщениеThe Third Argument is Passed. - Если третий аргумент не передан или пуст, выводится
The Particular Argument is not Passed.
Выводы
Мы показали Вам три примера того, как можно узнать количества аргументов, переданных скрипту Bash в Linux. Теперь Вы знаете, как использовать переменную $# и оператор -n в сценариях оболочки.
Спасибо за уделенное время на прочтение статьи!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.


























