Пост канала
🗑️ Bash-совет дня: safe_rm - «корзина» для удаляемых файлов Сколько раз вы случайно удаляли важный конфиг? Давайте сделаем rm более дружелюбным — вместо мгновенного уничтожения файлы будут складываться в «корзину» и автоматически очищаться спустя 30 дней. #!/usr/bin/env bash # safe_rm — перемещает удаляемые файлы в локальную «корзину» TRASH_DIR="$HOME/.local/share/Trash/files" # куда складываем mkdir -p "$TRASH_DIR" stamp=$(date +%Y-%m-%d_%H-%M-%S) for item in "$@"; do if [[ ! -e $item ]]; then printf '⚠️ %s: no such file or directory\n' "$item" >&2 continue fi mv -- "$item" "$TRASH_DIR/$(basename "$item")_$stamp" done # авто-очистка файлов, которым больше 30 дней find "$TRASH_DIR" -type f -mtime +30 -delete 2>/dev/null Быстрый старт sudo install -m 755 safe_rm /usr/local/bin/ echo "alias rm='safe_rm'" >> ~/.bashrc && source ~/.bashrc Проверяем touch important.cfg rm important.cfg ls ~/.local/share/Trash/files # Файл на месте 🎉 Лайфхак: • Хотите разные сроки хранения? Меняйте -mtime +30 на нужное количество дней. • Регулярные выражения в find позволяют тоньше выбирать, что чистить (например, только логи *_$(date +%Y-%m-*)). Спасайте нервы и конфиги! 😉 👉 @bash_srv
Открыть в MAX- Просмотры
- 1 411
- ER
- 1,9%
- Реакции
- 27