|
| ||||||||||||
| ||||||||||||
10. Разное10.1 Чтение пользовательского ввода с помощью readВ некоторых случаях, возможно, возникнет необходимость попросить пользователя что-нибудь ввести. Существуют различные способы выполнения этого. Одним из способов является следующий:
В качестве варианта Вы можете получать сразу несколько значений с помощью read. Следующий пример поясняет это:
10.2 Арифметические вычисленияВ командной строке (или оболочке) попробуйте ввести следующее: echo 1 + 1 Если Вы рассчитываете увидеть '2', то будете разочарованы. Что следует выполнить, если возникает необходимость, чтобы BASH произвёл вычисления над Вашими числами? Решение заключается в следующем: echo $((1+1)) В результате этого вывод будет более "логичным". Такая запись используется для вычисления арифметических выражений. Вы также можете выполнить это следующим образом: echo $[1+1]
Если Вам необходимо использовать дроби или более сложную математику, то можно использовать bc для вычисления арифметических выражений. Когда автор запустил "echo $[3/4]" в командной оболочке, она вернула значение 0. Это связано с тем, что если bash отвечает, он использует только целые значения. Если Вы запустите "echo 3/4|bc -l", оболочка вернёт правильное значение 0.75. 10.3 Поиск bashИз сообщения от mike (смотрите раздел "Благодарность"): Вы всегда используете #!/bin/bash .. Вы могли бы привести пример, каким образом можно обнаружить, где расположен bash. Предпочтительнее использовать 'locate bash', но locate имеется не на всех машинах. 'find ./ -name bash' из корневого каталога обычно срабатывает. Можно проверить следующие расположения: ls -l /bin/bash ls -l /sbin/bash ls -l /usr/local/bin/bash ls -l /usr/bin/bash ls -l /usr/sbin/bash ls -l /usr/local/sbin/bash (автор не способен сразу придумать какой-либо другой каталог... Он находил bash в большинстве этих мест на различных системах). Вы также можете попробовать 'which bash'. 10.4 Получение возвратного значения программыВ bash возвратное значение программы сохраняется в специальной переменной $?. Данный пример иллюстрирует, как перехватить возвратное значение программы; автор предположил, что каталог dada не существует (это также предложил mike).
10.5 Перехват вывода командыЭтот небольшой скрипт представляет все таблицы из всех баз данных (предполагается, что у Вас установлен MySQL). Кроме того, следует подумать о способах преобразования команды 'mysql' для использования подходящего имени пользователя и пароля.
10.6 Несколько исходных файловВы можете запускать несколько файлов с помощью команды source. __TO-DO__ Вперед Назад Содержание |
|
CITForum © 1997–2025