Как выполнить сценарий Shell в Linux
Выполнение сценариев оболочки в Linux — один из важнейших навыков, которым должен овладеть каждый пользователь или администратор Linux.
Знание того, как запускать сценарии, невероятно полезно при автоматизации задач, настройке заданий cron или просто при попытке управлять активностью системы. Однако есть определенная радость в написании сценариев, которые не только работают, но еще и элегантны и аккуратны. Давайте узнаем, как выполнять сценарии оболочки в Linux, из следующей статьи!
Что такое сценарий оболочки?
Прежде чем мы углубимся в выполнение, давайте быстро рассмотрим, что такое сценарий оболочки. Сценарий оболочки — это текстовый файл, содержащий ряд команд для выполнения оболочки на основе Unix, такой как Bash. По сути, это программа, написанная на языке командной строки оболочки.
Как выполнить сценарий Shell в Linux
Шаг 1. Создайте простой сценарий оболочки.
Первым шагом к выполнению сценария является, конечно же, его написание. В этом примере давайте создадим простой сценарий, который читает «Hello, World!» и текущая дата.
Откройте терминал в вашей системе Ubuntu и используйте свой любимый текстовый редактор, чтобы создать новый файл. Например, nano предназначен для быстрого редактирования, поскольку он прост, но вы можете предпочесть vim, если вам нужно что-то более мощное.
нано hello_world.sh
Внутри редактора введите следующий скрипт:
#!/bin/bash echo “Привет, мир!” echo “Сегодняшняя дата: 30.09.2024”
Этот сценарий делает две вещи: он печатает «Hello, World!» а затем отображает текущую дату. #!/bin/bash вверху называется shebang и сообщает системе, что этот сценарий следует запускать в оболочке Bash.
Шаг 2. Сделайте скрипт исполняемым.
По умолчанию только что созданный сценарий не является исполняемым. Вам нужно сделать его исполняемым с помощью команды chmod. Это один из тех шагов, о котором легко забыть, но он очень важен.
chmod +x hello_world.sh
Параметр +x делает сценарий доступным для выполнения пользователем, группой и другими пользователями в зависимости от ваших настроек разрешений.
Шаг 3. Выполните сценарий оболочки
Теперь вы готовы запустить сценарий. Существует несколько способов выполнить скрипт в Linux, и в этой статье будут рассмотрены наиболее распространенные методы:
Способ 1: выполнить, используя относительный путь
Это самый простой метод, если вы находитесь в том же каталоге, что и скрипт:
./hello_world.sh
./ сообщает оболочке искать сценарий в текущем каталоге. Если все пойдет хорошо, вы должны увидеть следующий вывод:
Привет, мир! Сегодняшняя дата: вторник, 8 августа, 14:22:31 UTC 2024.
Способ 2: выполнить с абсолютным путем
Иногда вам потребуется указать полный путь к скрипту, особенно если скрипт находится в другом каталоге.
/home/имя пользователя/scripts/hello_world.sh
Этот метод очень удобен при запуске скриптов из заданий cron или в других скриптах.
Способ 3: выполнить с использованием определенной оболочки
Хотя shebang определяет, какую оболочку использовать, вы можете изменить это, запустив сценарий в другой оболочке. Например, если вы хотите запустить скрипт в sh вместо bash, вы можете выполнить:
ш hello_world.sh
Или, явно в bash:
bash hello_world.sh
Это может быть полезно при тестировании работы вашего скрипта в разных оболочках.
Устранение распространенных проблем
Даже простые сценарии могут иметь проблемы. Вот некоторые распространенные проблемы и способы их устранения:
- В разрешении отказано: если вы видите эту ошибку, дважды проверьте, выполнили ли вы сценарий с помощью команды chmod +x.
- Команда не найдена: обычно это означает, что строка shebang сценария отсутствует или неверна, или сценарий отсутствует в вашем PATH.
- Сценарий не работает должным образом: используйте bash -x, за которым следует имя сценария, чтобы запустить сценарий в режиме отладки. Это будет отображать каждую команду по мере ее выполнения, что полезно для выяснения места ошибки.
Выполнение сценариев оболочки в Linux — это базовая задача, открывающая мир автоматизации и эффективности. Для таких задач, как управление сервером или просто попытка автоматизировать некоторые вещи на локальном компьютере, написание сценариев оболочки — это навык, который стоит освоить. Приятно видеть, что хорошо написанный сценарий работает безупречно, экономя время и снижая вероятность человеческой ошибки.
Марвин Фрай
Обновление от 30 сентября 2024 г.