Другие команды и примеры
Read
Считывает что-либо в переменную.
Формат: «read переменная». Здесь знак доллара не нужен! Если необходимо узнать чье-то имя, можно написать: echo "Как ваше имя?" read hisname echo Hello $hisname
Как ваше имя? Sir Hackalot Привет Sir Hackalot Запомните: read может считывать и числовые значения.
Trap
Отслеживает применение кем-то команды прерывания (Ctrl-c). Формат: «trap "command; command; command; и т. д."»
Пример:
Trap "echo 'Фигушки!! Ты так легко от меня не избавишься'; echo "Придется тебе это прочитать!'"
И теперь если нажать Ctrl-c во время работы скрипта, то увижу на экране вот что:
Фигушки!! Ты так легко от меня не избавишься Придется тебе это прочитать!
Формат: «exit [число]». Обеспечивает выход из оболочки, возвращая код равный «числу».
CASE
Выполнение case подобно выбору из меню. Формат команды или структуры таков:
Case переменная in
command; command;;
command; command; command;;
*) command;; esac
Каждая часть может иметь любое количество команд. Однако после последней команды должны стоять Возьмем такое меню: echo "Выберите:"
Echo "(D)irectory (L)ogoff (S)hell" read choice case $choice in D) echo "Создаю раздел..."; Is - al ;; L) echo Пока; kill -10;; S) exit;;
*) Echo "Ошибка! Это не команда ";; esac
Esac обозначает конец функции case. Он должен стоять после последней команды.
Итак, петли. Таких функций две: петли for и петли repeat. Петли repeat выглядят так: «repeat нечто нечтої нечто2». Эта функция выполняет повторение секции вашего скрипта для каждого «нечто». Если написать:
Repeat scythian sirhack prophet то на экране появится scythian, затем sirhack, затем prophet. Петля for определяется как: for для переменной в чем-то do (делай)
Done (сделано) Пример:
For counter in 1 2 3 do.
Echo $counter done
Будут выведены значения 1, затем 2, затем 3.
Формат: «Test переменная опция переменная».
Опции таковы:
- eq — равно;
- пе — не равно;
- gt — больше;
- It — меньше;
- ge — больше или равно;
-1е— меньше или равно.
Для строк это: = — если равно; != — если не равно.
Если выражение верно, то функция возвращает ноль. Например,
Test 3 - eq 3
Это означает проверку на верность выражения 3 = 3, и будет выведен ноль.
EXPR
Применяется для числовых функций. Как правило, вы не можете просто напечатать:
Echo 4+5 и получить ответ.
Вы должны написать:
Ехрг переменная [или число] оператор переменная2 [или число] Операторы таковы:
+— сложение;
— вычитание;
* — умножение;
/ — деление;
Л — степень (в некоторых системах). Пример:
Ехрг 4,+5
Var = ехрг 4+5
Var получит значение 9.
В некоторых системах ехрг иногда распечатывает формулу. Необходимо пояснить, что 22+12 вовсе не то же самое, что 22 + 12. Если вы введете ехрг 22+12, то увидите: 22+12
А если введете ехрг 22 + 12, то увидите: 34