Удалить все файлы с расширением командной строки Linux

Linux Изучение

Каждый файл имеет определенное расширение. Если мы хотим удалить файлы с одинаковыми или разными расширениями из нашей системы Linux, мы должны выполнять множество различных типов команд. В этой статье мы увидим, как удалить все файлы с расширением командной строки Linux.

Удалить все файлы с расширением командной строки Linux

В этом разделе будут объяснены различные способы и методы удаления всех файлов с расширениями с помощью командной строки в Linux.

Использование команды rm

Команда ’rm’ — это базовая утилита командной строки в Linux для удаления сокетов, каналов, узлов устройств, символических ссылок, каталогов, системных файлов и т.д. Чтобы удалить файл с определенным расширением, используйте команду ’rm’. Эта команда очень проста в использовании, и ее синтаксис примерно такой.

rm <filename1> <filename2> … <filenameN>

В соответствующей команде «имя_файла1», «имя_файла2» и т.д. Обращайтесь к именам плюс их полные пути. Когда файлы находятся в одном каталоге, нам не нужно записывать полный путь, но мы должны указать полный путь, если это не так.

Мы можем использовать выражения с подстановочными знаками, чтобы указать инкрементные файлы с одинаковыми именами или файлы с определенными расширениями файлов. Итак, давайте рассмотрим пример, в котором мы удалим файлы DATA.txt, DATA1.txt и DATA2.txt. Эти файлы доступны в каталоге Documents, поэтому сначала мы откроем их в терминале с помощью следующей команды:

После этого выполните следующую команду

Теперь давайте проверим, что система успешно удалила файлы, поэтому выполните следующую команду/

Использование подстроки для удаления файлов

С помощью следующей команды мы можем удалить те файлы, которые содержат подстроку test.

rm *test*

Здесь «*» обозначает любую строку. Поэтому здесь «* test *» учитываются все файлы, имена которых имеют подстроку «test».

Читайте также:  Как сделать ваш сайт быстрее с помощью Performance API

Мы можем легко удалить файлы с определенными расширениями из любой папки. В этом примере мы удалим файлы с расширением gif. Мы можем удалить все файлы GIF из папки, используя следующую команду.

rm *.gif

Приведенный выше синтаксис работает только для файлов. Наряду с файлами мы также можем удалять папки с помощью аргумента ’-r’:

rm -r <file/folder1> <file/folder2> … <file/folderN>

Главное отметить, что он удаляет папку в целом рекурсивно, то есть все файлы, подпапки и т.д. Этой папки во всей структуре папок. Это означает, что нет способа рекурсивно удалять файлы с определенными расширениями или файлы с шаблонами имен файлов.

Найти команду

Найти — самая эффективная и популярная команда для поиска файлов. Команда find используется для удаления расширений файлов в Linux. Команда find выполняет рекурсивный поиск файлов по размеру, расширению, имени и параметрам файла. Используя команду find, мы можем передать его вывод по конвейеру в ’rm’.

Резервное копирование и проверка файлов

Также используются различные команды, чтобы проверить, какие файлы мы удаляем, и их расположение правильное. Однако этот шаг необязателен, если необходимо убедиться.

Проверить местоположение

Мы должны убедиться, что расположение нашего файла правильное. Для этого мы используем следующую команду.

pwd/tmp/d

Резервные файлы

Для резервного копирования мы используем команду tar. Если мы не на 100% уверены, что у нас есть нужные файлы для удаления или нет, мы должны сделать резервную копию.

tar -cf backup.tar

Мы можем добавить опцию -v, чтобы увидеть список файлов, резервные копии которых выполняет команда tar.

tar -cvf backup.tar .

Удалить файлы с помощью find — удалить

Если мы не решаемся использовать rm, мы можем использовать find отдельно от этого. Его следует использовать с осторожностью. Это примерно так.

find . -name «*.bak» -type f -delete

Прежде всего, мы убеждаемся, какой файл нам нужно удалить. Для этого мы используем следующую команду.

find . -name «*.bak» -type f

Мы должны позаботиться о том, чтобы -delete был последним аргументом в нашей команде. Если по ошибке мы поместим его перед аргументом -name *.bak, он удалит все.

Удалите файлы с помощью find и xargs

Он не поддерживает опцию «-delete». Мы можем передать его в ’rm’ следующим образом с выводом, который появляется перед нами при поиске.

find . -name «*.bak» | xargs rm

Здесь мы передаем аргумент в rm с помощью команды xargs. Мы можем рекурсивно удалить всю структуру папок с помощью этого метода.

Удаляет файлы с помощью find-exec

Мы используем rm с различными командами (такими как корзина) или дополнительными параметрами для удаления файлов.

find . -type f -name ‘*.txt~’ -exec rm -f {} \;

Или

find . -type f -name ‘*.txt~’ -exec trash {} \;

Использование find с -exec дает нам преимущество использования любых параметров и команд для удаления файлов. В то же время он также позволяет нам выполнять другие массовые операции с набором файлов.

Заключение

В этой статье мы научились удалять любой файл из папок или папок с любым конкретным расширением с помощью различных команд. Мы надеемся, что из этой статьи, объясненной нами, вы получите полную информацию в одном месте и, должно быть, очень хорошо ее поняли.

Оцените статью
bestprogrammer.ru
Добавить комментарий