Linux

Напишите эффективный Bash-скрипт за 5 минут – полное руководство

В этом руководстве вы узнаете, как быстро написать полезный Bash-скрипт для автоматизации повседневных задач в Linux.

Обновлено 13 июля 2026 г.
10-15 мин
Средняя
FixPedia Team
Применимо к:Bash 5.xUbuntu 22.04Debian 12

Введение

Bash — это мощный интерпретатор командной строки в Linux, который позволяет автоматизировать повторяющиеся задачи. Написание простого Bash-скрипта занимает всего несколько минут, но при этом вы получаете инструмент, который может ускорить вашу работу и уменьшить количество рутинных действий. В этом руководстве мы создадим рабочий скрипт с нуля, шаг за шагом добавляя необходимые элементы.

Требования

  • Bash 5.x (стандартный в современных дистрибутивах Linux)
  • Доступ к консоли с правами чтения/записи в целевом каталоге
  • Базовые знания команд Linux (навигация, редактирование файлов)

Шаг 1: Создайте скрипт

Сначала создайте файл со скриптом. Выберите подходящее имя, например my_script.sh, и поместите его в каталог, к которому у вас есть доступ (например, ~/scripts).

mkdir -p ~/scripts
cd ~/scripts
touch my_script.sh

Шаг 2: Добавьте shebang

Первая строка любого Bash-скрипта должна указывать интерпретатор. Добавьте строку #!/bin/bash в начало файла.

# Редактор: используйте любой текстовый редакатор (nano, vim, nano <file>)
# Первая строка:
#!/bin/bash

💡 Совет: Если вы используете nano, вы можете добавить shebang с помощью Ctrl+O, затем Enter, и сохранить файл с Ctrl+X.

Шаг 3: Напишите основную логику

Теперь добавьте полезный код. В качестве примера мы реализуем простой цикл, который выводит пять строк.

# Пример цикла for: вывод строк "Строка 1" … "Строка 5"
for i in {1..5}; do
    echo "Строка $i"
done

Шаг 4: Сделайте скрипт исполняемым

После редактирования сделайте скрипт исполняемым. Это позволит запускать его напрямую.

chmod +x my_script.sh

⚠️ Важно: Без флага +x скрипт можно запустить только через bash my_script.sh.

Шаг 5: Запустите скрипт

Теперь вы можете выполнить скрипт. Два распространённых способа:

# Способ 1: напрямую (работает, если установлен флаг исполняемого файла)
./my_script.sh

# Способ 2: через интерпретатор Bash
bash my_script.sh

Оба варианта дадут одинаковый результат: вывод пяти строк.

Шаг 6: Добавьте обработку ошибок

Для надежности добавьте базовую обработку ошибок. Команда set -e заставит скрипт прерываться при ошибке выполнения любой команды.

# Прерывать выполнение при ошибке
set -e

# Пример безопасного удаления файла (раскомментируйте для теста)
# rm -f /tmp/example_file

Если вы хотите вручную проверить код возврата, используйте конструкцию if:

# Пример проверки кода возврата команды
cp source.txt dest.txt
if [ $? -eq 0 ]; then
    echo "Копирование успешно"
else
    echo "Ошибка копирования"
fi

Проверка результата

Запустите скрипт и убедитесь, что вывод соответствует ожиданиям:

Строка 1
Строка 2
Строка 3
Строка 4
Строка 5

Если вы видите это, скрипт работает корректно.

Возможные проблемы

  • Shebang отсутствует или неправилен – скрипт может быть выполнен другим интерпретатором или будет отклонён. Убедитесь, что первая строка точно #!/bin/bash.
  • Отсутствие прав на выполнение – если chmod +x не был выполнен, запуск через ./my_script.sh вызовет ошибку Permission denied. Используйте bash my_script.sh в качестве альтернативы.
  • Ошибки синтаксиса – Bash выведет сообщение об ошибке, например my_script.sh: command not found или syntax error. Проверьте скрипт с помощью bash -n my_script.sh, чтобы выявить проблемы без его запуска.

Часто задаваемые вопросы

Как создать новый Bash-скрипт?
Для чего используются shebang-строки?
Как отладить скрипт?
Как передать параметры скрипту?

Полезное

Создайте скрипт
Добавьте shebang
Напишите основную логику
Сделайте скрипт исполняемым
Запустите скрипт
Добавьте обработку ошибок

Эта статья помогла вам решить проблему?