Свой скрипт на сервере — норма. Правила, отличающие рабочий инструмент от мины.
Свой скрипт на сервере — норма. Правила, отличающие рабочий инструмент от мины. Строгий режим в начале: set -euo pipefail. Скрипт остановится на первой ошибке, а не продолжит выполнять следующие строки с пустыми переменными. Без этого rm -rf "$DIR"/ при незаданной DIR превращается в катастрофу. Кавычки вокруг переменных всегда. Пробел в имени файла ломает всё остальное. Проверка входных данных. Если скрипт принимает путь или имя базы, проверьте их до, а не после. Идемпотентность. Повторный запуск не должен ломать то, что уже сделано. Создание каталога — mkdir -p, добавление строки в конфиг — с предварительной проверкой на наличие. Логи и код возврата. Пишите, что делаете, и возвращайте ненулевой код при ошибке — иначе cron и мониторинг будут считать, что всё хорошо. Блокировка от параллельного запуска: flock, чтобы два экземпляра не начали работать одновременно. И сухой прогон для всего, что удаляет: ключ, при котором скрипт только показывает список. Какой скрипт у вас однажды сработал не так?