Ответ
Да, активно использую Bash для автоматизации рутинных операций, написания скриптов развертывания и обработки логов в инфраструктурных задачах.
Типичные сценарии использования:
- Автоматизация бэкапов и очистки временных файлов.
- Написание wrapper-скриптов для CI/CD пайплайнов (например, подготовка окружения, запуск тестов).
- Парсинг и агрегация логов с помощью
grep,awk,sed. - Управление контейнерами и виртуальными машинами через CLI.
Пример скрипта для ротации логов Nginx:
#!/bin/bash
LOG_DIR="/var/log/nginx"
BACKUP_DIR="/backups/nginx_logs"
DATE=$(date +%Y%m%d)
# Создаем директорию для бэкапа, если её нет
mkdir -p "$BACKUP_DIR"
# Архивируем access.log и error.log
tar -czf "$BACKUP_DIR/nginx_logs_$DATE.tar.gz" -C "$LOG_DIR" access.log error.log
# Очищаем исходные логи (с перезапуском Nginx для корректной работы)
> "$LOG_DIR/access.log"
> "$LOG_DIR/error.log"
systemctl reload nginx
echo "Логи заархивированы в $BACKUP_DIR/nginx_logs_$DATE.tar.gz"
Для сложной логики или кроссплатформенных задач часто перехожу на Python, но Bash незаменим для быстрых, легковесных скриптов, напрямую взаимодействующих с системой.