Давайте поговорим о нескольких условиях тестирования: сценарий, который мы только что разработали в предыдущей
лекции, запрашивает у пользователя число и проверяет, если число меньше 18 равно 18 или больше
18. сценарий работает нормально, но есть проблема в логика скрипта, если пользователь
вводит очень большое число для возраста, например, 200, скрипт распечатает ваше основное, и
вы можете согласиться с тем, что никто не продан, все еще жив, все, что мне нужно сделать, это добавить еще одно условие, которое
будет проверять если возраст больше 18 и меньше 100, чтобы все условие alif было истинным,
мы можем решить проблему, добавив вложенный оператор if или, что еще лучше, используя
оператор логического конца, операторы логического или и конца позволяют использовать несколько условий в
операторы if, поэтому здесь, если край меньше 18 и процент амперсанда, это конечный оператор в bash
Dollar hge zero, я хочу, чтобы h было больше нуля, нет никого, которому минус пять лет,
и я привел новую статью alif для случай, когда возраст составляет от 18 до 100, так что elif Dollar
age gt 18, поэтому, если возраст больше 18
и процентный процент и второе условие тестирования доллар h минус le 100, тогда ваше основное
и условие else для случая, когда возраст составляет недействителен так недействителен h давайте проверим сценарий хорошо,
здесь есть только две квадратные скобки, я сохраняю сценарий и запускаю его, я запускаю сценарий,
я ввожу 6, и он распечатает ваш несовершеннолетний идеал, теперь я введу
18. Я хочу протестировать все возможности. Поздравляю, вы только что стали майором.
Вы являетесь главным, и я запущу сценарий, указав ему несколько недопустимых значений для возраста,
например минус 34, недопустимые x или 122. Отлично, сценарий работает,
давайте возьмем Взглянем на последний пример этой лекции,
давайте посмотрим на сценарий, созданный в предыдущей лекции,
тот, который принимает аргумент и проверяет, относится ли аргумент к типу файла или каталога, если
это файл, он отображает свое содержимое с помощью cat и если это каталог, в котором он перечисляет свое содержимое
с помощью ls min us, мы протестировали его, и он работал нормально, единственная проблема
заключается в том, что аргумент является обязательным, если скрипт запускается без каких-либо аргументов,
он будет отображать неправильное сообщение и говорит, что аргумент не является ни файлом, ни каталогом, который
я выполнил сценарий без аргументов и распечатал неверное сообщение, в
котором говорится, что аргумент не является ни файлом, ни каталогом, лучше проверить
, есть ли аргумент, и только в этом случае начать тестирование, если это файл или каталог и
выполните комментарии, так что помните из предыдущей лекции, что количество аргументов скрипта
хранится в специальной предопределенной переменной с именем хэш доллара, поэтому я добавляю условие тестирования,
чтобы увидеть, есть ли ровно один аргумент, который я открываю скрипт и я добавляю условие тестирования
здесь, в начале, поэтому, если количество аргументов минус уравнение 1 равно 1,
тогда я сделаю отступ для всего следующего кода для удобства чтения, чтобы сделать это в veeam,
выберите нужные строки отступать t, нажав shift v в командном режиме, используйте клавиши со стрелками,
чтобы определить свой выбор, а затем нажмите символ «больше» на клавиатуре или точку сдвига.
Я выбираю код и нажимаю Shift и точку,
и он был с отступом, и я привел предложение else иначе повторить сценарий следует запускать с аргументом
и игнорировать, и я тестирую его, запустив сценарий с другим количеством аргументов,
я сохраняю его, открывая другой терминал и запускаю сценарий, например, я запускаю сценарий
без каких-либо аргумент, и он дает нам правильное сообщение, сценарий должен запускаться с
аргументом, это каталог, аргумент является файлом или несуществующим, идеально это намного лучше
, кстати, это называется вложенным if, потому что есть внутренний оператор if внутри внешний