На этот вопрос уже есть ответ здесь:
Я хочу удалить все файлы .jpg из моей папки «Музыка», чтобы сэкономить место. Папка «Моя музыка» содержит вложенные папки, и я хотел бы знать, есть ли команда для удаления всех файлов .jpg из всех этих папок независимо от их уровня. Спасибо за вашу помощь!
Самый простой способ (если вы используете Ubuntu Desktop):
Перейдите в папку «Музыка» в Nautilus, нажмите Ctrl kbd> + F kbd> и найдите .jpg
.
и amp; затем удалите его
Вы также можете изменить местоположение и сделать свой поиск более конкретным.
Будьте более точным после поиска .jpg
Нажатие на зеленую кнопку Select File type Picture
& amp; затем удалите jpg
из поиска только .
точка & amp; затем reload
, как показано на рисунке ниже
Что он сделает, он будет искать файл изображения, например
blockquote>.jpg .png .gif
& amp; все остальные файлы, которые находятся вPicture Format
Быстрое и чистое решение для командной строки было бы
cd <dir>
find . -type f -iname \*.jpg -delete
.
приказывать начать поиск в текущей папке. -type f
говорит найти только для поиска файлов. -iname
делает поиск нечувствительным к регистру. -delete
сообщает find для удаления / удаления всех найденных файлов. ВНИМАНИЕ! Я рекомендую сначала запустить команду без -delete
, чтобы получить список файлов, которые будут удалены при включении в команду -delete
. Таким образом, небольшая опечатка не удалит то, что вы не собирались.
Для получения дополнительной информации о том, как использовать find
и что он может делать, см. man find
Обратите внимание, что find
не будет выдавать никакого вывода, когда используется -delete
.
Относительно комментария к нескольким расширениям
find . -type f \( -name \*jpg -o -name \*png \) -delete
( .. )
Групповое выражение. Необходимо экранировать из оболочки, поэтому \( .. \)
в примере -o
логический или Так что приведенный выше пример будет соответствовать любому файлу, который имеет jpg
или png
в конце названия. Другие расширения могут быть добавлены таким же образом. Просто запомните -o
между каждым оператором -name
, если -o
не указано, find
по умолчанию будет -a
(и), что не будет работать, так как файл не может заканчиваться обоими jpg
. ] и png
одновременно.
Это следует сделать
sudo rm -rf -d ~/Music/*.JPG
, чтобы удалить все файлы .JPG в папке «Музыка».
Здесь shopt -s globstar
Bash может быть полезен для рекурсивного сглаживания: