🧹 Как удалить все файлы в Linux-каталоге, кроме нужных расширений
14 апреля 2025 г.Kali Linux

🧹 Как удалить все файлы в Linux-каталоге, кроме нужных расширений
Хочешь очистить папку, но сохранить .zip, .txt или .odt? В Linux это можно сделать тремя способами:
🔧 1. Расширенные шаблоны Bash (extglob
)
shopt -s extglob
rm -v !(.zip|.odt)
shopt -u extglob
Удалит все файлы, кроме .zip и .odt. Удобно для быстрого удаления в одной папке.
🔍 2. Через find
— мощно и рекурсивно
find . -type f -not -name "*.gz" -delete
Удалит всё, кроме .gz. Подходит для вложенных директорий и сложных фильтров.
⚙️ 3. Переменная Bash GLOBIGNORE
GLOBIGNORE=.odt:.txt
rm -v *
unset GLOBIGNORE
Удалит всё, кроме указанных расширений. Удобно, если ты в Bash и хочешь быстро исключить нужное.
@linuxkalii