При написании скриптов на shell часто возникает потребность вставлять условия проверки того или иного условия. Для этого удобно пользоваться операторами проверки. Вот их небольшой список.
Проверка прав доступа к файлу:
-d Каталог; -f Обычный файл; -L Символическая связь; -r Файл для чтения; -s Файл имеет ненулевой размер. Файл не пуст; -w Файл для записей; -u Файл имеет установленный бит suid; -x Исполняемый файл; |
Логические операторы условий:
-a Логическое AND, возвращает истину, если обе части оператора принимают истинное значение. -o Логическое OR, возвращает истину, если какая либо из частей оператора может принимать истинное значение. ! Логическое NOT, возвращает истину, если условие ложно. |
Проверка строк:
= Две строки равны. != Две строки не равны. -n Эта строка нулевая. -z Эта строка не является нулевой. |
Проверка чисел:
-eq Два числа равны. -ne Два числа не равны. -gt Первое число больше второго числа. -lt Первое число меньше второго числа. -le Первое число меньше или равно второму числу. -ge Первое число больше или равно второму числу. |
#!/bin/sh if [ –d /var/www/dyrektory ] then echo “Каталог /var/www/dyrektory существует” else echo “Каталог /var/www/dyrektory не существует” fi |
#!/bin/sh./prog if [ $? -ne 0 ] then echo "Программа завершилась неуспешно" else echo "Программа успешно выполнена" fi |
добавь про проверку результата программ
ОтветитьУдалитьДобавил.
ОтветитьУдалить-qt и -qt замени на -gt и -ge
ОтветитьУдалитьисправил спасибо, не заметил.
ОтветитьУдалитьдефис пропущен перед ne:
ОтветитьУдалитьif [ $? ne 0 ]