Что такое Bash?

«Что такое Bash?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Bash (Bourne-Again SHell) — это стандартная командная оболочка в большинстве дистрибутивов Linux и macOS, а также доступная в Windows через WSL или Git Bash. Это интерпретатор командной строки и скриптовый язык для автоматизации.

Ключевые возможности для DevOps:

  • Автоматизация рутинных задач: написание скриптов для деплоя, резервного копирования, мониторинга.
  • Управление процессами и файлами: запуск, остановка, перенаправление вывода.
  • Интеграция с инструментами: вызов утилит (awk, sed, grep), работа с API через curl, управление контейнерами.
  • Поддержка переменных окружения, функций, условий и циклов.

Пример скрипта для проверки диска и отправки алерта:

#!/bin/bash
THRESHOLD=90
USAGE=$(df / | awk 'NR==2 {print $5}' | sed 's/%//')
if [ $USAGE -gt $THRESHOLD ]; then
    echo "Диск заполнен на ${USAGE}%" | mail -s "Disk Alert" admin@example.com
fi

В DevOps Bash — фундаментальный инструмент для написания скриптов развертывания, оркестрации и обслуживания инфраструктуры.