- Удаление файлов в Linux. Как удалять файл через терминал Linux?
- Удаляем файлы в Linux: практика
- Удаляем папки и каталоги в Linux
- Выводы
- Как легко удалить файлы в Linux
- Удаление файлов из Linux с помощью файлового менеджера
- Удаление файлов из Linux через терминал
- Удаление файлов в Linux: особенности работы с командой «rm
- Удаление одного файла Linux
- Удаление нескольких файлов в Linux
- Удаление файлов Linux определенного формата
- Удаление определенных типов файлов
- Удалить все файлы в заданной папке
- Как удалять файлы и директории в Linux
- Как удалить файл в терминале Linux
- Как удалить несколько файлов
- Как удалить файлы в интерактивном режиме
- Как принудительно удалить файлы
- Как удалить пустые каталоги
- Как в Linux удалить директорию с файлами
- Как рекурсивно удалить несколько каталогов
- Как удалить папку в терминале Linux принудительно и рекурсивно
- Заключение
- How to delete multiple files at once in Bash on Linux?
- 7 Answers 7
Удаление файлов в Linux. Как удалять файл через терминал Linux?
Удаление файлов в Linux — задача, которая не вызывает затруднений у опытных пользователей. Наша же статься ориентирована, скорее, на начинающих. В ней вы сможете посмотреть, как удалить файлы через терминал, и какие команды лучше всего при этом использовать.
Почему лучше удалять файлы из консоли? Дело в том, что это даёт ряд преимуществ и бо́льшую гибкость. К примеру, используя специальную команду, вы легко и полностью удалите файл с жёсткого диска без возможности восстановления. Или всего одной командой и с помощью определённых символов, условий либо регулярных выражений удалите сотни не нужных вам файлов в каталоге либо подкаталогах, отвечающих некоторому критерию.
Удаляем файлы в Linux: практика
В ОС Linux для удаления файлов есть стандартная утилита rm . Как это принято со стандартными утилитами, в названии rm есть определённая идея. В нашем случае речь идёт о сокращении от английского слова Remove — удалять.
Итак, чтобы выполнить удаления одного файла, используем команду rm , указывая за ней имя нашего файла:
Если наш файл находится не в текущем рабочем каталоге, нужно указать путь к его местоположению:
Бывает, что файл защищён от записи. Тогда нам предложат подтвердить команду. Чтобы удалить файл в такой ситуации, просто вводим y и нажимаем Enter.
rm: remove write-protected regular empty file 'filename'?Если мы хотим удалить сразу несколько файлов в Linux, то это тоже не проблема: используем команду rm , за которой прописываем имена наших файлов через пробел:
rm filename1 filename2 filename3Ещё вариант — использование подстановочного знака * и регулярных выражений для соответствия определённым файлам. К примеру, мы легко удалим все файлы в Linux, имеющие расширение .txt следующей командой:
Для подтверждения каждого файла перед удалением используйте опцию -i :
Но когда файлов много, а вы твёрдо уверены в правильности своей команды и не хотите каждый раз отвечать на вопрос системы, используйте противоположную опцию -f . Будут удалены все файлы безоговорочно, т. е. без лишних вопросов:
Удаляем папки и каталоги в Linux
Если хотите удалить пустой каталог, задействуйте опцию -d .
Если хотим удалить непустой каталог и все файлы, которые в нём находятся, поступаем следующим образом:
Опять же, в случае наличия защиты от записи, система Linux спросит пользователя, стоит ли выполнять удаление. Если мы хотим удалить файлы и непустые каталоги без лишних вопросов, делаем так:
Когда хотим удалить сразу несколько каталогов, мы применяем команду rm, прописывая за ней имена каталогов через пробел:
rm -r dirname1 dirname2 dirname3Кстати, здесь мы тоже можем использовать подстановочный знак ( *) и регулярные выражения, обеспечивающие соответствие нескольким каталогам.
Выводы
Как видите, удалить файл в Linux через терминал совсем несложно, поэтому с этой операцией справится каждый. При этом вы должны не только понимать, как правильно использовать команду rm в Linux, но и знать, как делать это безопасно.
Как легко удалить файлы в Linux
В Linux вы можете удалить отдельные файлы, несколько файлов или целые каталоги. Однако этот процесс несколько отличается от привычной Windows. Мы покажем вам различные способы как легко удалить файлы в Linux.
Удаление файлов из Linux с помощью файлового менеджера
В зависимости от среды рабочего стола, вы можете найти в своей системе Nautilus, Dolphin или другие файловые менеджеры для Linux. С помощью этих стандартных файловых менеджеров вы можете удалять файлы в Linux всего за несколько шагов.
1. Через файловый менеджер зайдите в файлы, которые вы хотите удалить.
2. Удерживая нажатой левую кнопку мыши, отметьте файлы, которые нужно удалить.
3. Щелчок правой кнопкой мыши на одном из файлов вызовет контекстное меню. В зависимости от среды рабочего стола вы найдете опцию «Отправить в корзину«, «Удалить файлы» или «Удалить«.
Совет: Для удаления файлов в Linux вместо контекстного меню можно использовать клавишу «Delete«.
Удаление файлов из Linux через терминал
Учитывая большое количество команд в терминале Linux, следует ожидать, что командная строка также может быть использована для удаления файлов Linux.
1. Откройте файловый менеджер и найдите файлы, которые вы хотите удалить. Вы также можете использовать команду «cd /путь/к/папке» для перехода к файлам непосредственно из терминала.
2. Или войдите в папку, далее щелкните правой кнопкой мыши на окне, чтобы открыть контекстное меню. Выберите «Открыть в терминале«.
3. С помощью команды «rm» (сокращение от remove) вы можете удалить один или несколько файлов из Linux.
Удаление файлов в Linux: особенности работы с командой «rm
В зависимости от того, хотите ли вы удалить один или несколько файлов Linux или непосредственно все файлы определенного типа. Вам придется использовать команду «rm» следующими способами:
Удаление одного файла Linux
С помощью команды «rm«, за которой следует имя файла, отдельные файлы могут быть быстро и легко удалены с помощью терминала.
Удаление нескольких файлов в Linux
Чтобы удалить несколько файлов, пропишите все имена файлов, разделенные пробелом, после команды «rm».
rm имя_файла.расширение имя_файла.расширение
Удаление файлов Linux определенного формата
Помимо удаления одного или нескольких файлов из Linux, можно удалять конкретные файлы с определенным именем:
Удаление определенных типов файлов
Если в папке находятся файлы разных типов и вы хотите удалить все файлы с определенным расширением (например, .pdf, .ods или .doc), введите следующее после команды «rm»:
В этом случае все файлы с расширением .ods будут удалены.
Удалить все файлы в заданной папке
Если вы хотите удалить файлы и вложенные папки из определенной папки, введите в терминале следующую команду:
В этом случае будут удалены все файлы в папке «Папка», но не сама папка. Также можно удалить каталог Linux, включая все содержащиеся в нем файлы.
Ну вот и все, теперь вы можете удалить файл в терминале Linux.
Как удалять файлы и директории в Linux
Visitors have accessed this post 50177 times.
В некоторых случаях может потребоваться удалить ненужные директории и файлы, чтобы освободить место на жестком диске. Рассказываем, как это сделать.
Для удаления файлов используется команда rm. Предупреждение: удаление файлов и каталогов в Linux с помощью команды rm является необратимым. Поэтому следует проявлять особую осторожность при ее применении.
Как удалить файл в терминале Linux
Чтобы в Linux удалить файл с помощью команды rm, используйте следующий синтаксис:
$ rm filename
Например, мы создадим текстовый файл file1.txt с помощью команды touch. Для удаления файла запустите:
$ rm file1.txt
ВыводКак удалить несколько файлов
Чтобы удалить несколько файлов с помощью команды rm, используйте синтаксис:
$ rm file1 file2 file3
Создадим 3 файла — file1.txt, file2.txt, file3.txt, используя команду touch. Чтобы удалить эти файлы при помощи одной команды, запустите:
$ rm file1.txt file2.txt file3.txt
Вывод
Удалить все файлы в папке Linux с определенным расширением можно, используя подстановочный символ (*). В приведенном ниже примере подстановочный символ ищет и удаляет все файлы с расширением .txt
$ rm *.txtКак удалить файлы в интерактивном режиме
Если нужно подтвердить удаление файлов перед их удалением, используйте -i flag, как показано ниже.
$ rm -i file1.txt
ВыводКак принудительно удалить файлы
Чтобы принудительно удалить файлы, особенно те, которые были защищены от записи, используйте флаг -f , как показано ниже.
$ rm -f file1.txt
ВыводКак удалить пустые каталоги
Если вы хотите удалить пустой каталог, используйте флаг -d с командой rm
$ rm -d directory_name
Давайте создадим пустой каталог и назовем его data.
Чтобы удалить этот каталог, запустите
$ rm -d data
Вывод
В Linux команда удалить папку может выглядеть, как rmdir. Rmdir — это сокращение от слов remove directory. Ниже приведен синтаксис.
$ rmdir directory_name
Во втором примере мы создадим новый каталог и назовем его linux . Затем мы удалим его с помощью команды rmdir.
Вывод
Как в Linux удалить директорию с файлами
Если нужно удалить заполненные каталоги и все их содержимое, используйте флаг -r, как показано ниже
$ rm -r directory_name
В этом примере у нас есть каталог с названием distros, в котором хранится 5 файлов, а именно centos, debian, fedora и mint.
Чтобы удалить каталог и его содержимое, запустите:
$ rm -r distrosКак рекурсивно удалить несколько каталогов
Чтобы удалить сразу несколько каталогов, используйте приведенный ниже синтаксис:
$ rm -r directory_1 directory_2 directory_3
Например, для того чтобы удалить 3 каталога, а именно data1, data2 и data3, запустите:
$ rm -r data1 data2 data3
ВыводКак удалить папку в терминале Linux принудительно и рекурсивно
Для того чтобы рекурсивно и принудительно удалить каталоги без запроса, используйте комбинацию флага -rf , как показано ниже:
$ rm -rf directory_nameЗаключение
Теперь вы знаете, как безопасно удалить файл в Linux, как удалить папку в Linux через терминал, как удалить несколько файлов и многое другое.
Каждую неделю мы в live режиме решаем кейсы на наших открытых онлайн-практикумах, присоединяйтесь к нашему каналу в Телеграм, вся информация там.
Если вы хотите освоить функционал системного администратора Linux на практике, приглашаем на наш практикум Linux by Rebrain.
How to delete multiple files at once in Bash on Linux?
By the way, why tthe -rf ? Are these folders ? f is to force, r is for recursive. It will work if it's only a file but be warned, using -rf each time you want to delete something is very (very) (very very) dangerous. (and you should add the tag "bash" because "linux" is too wide.
@user66001: For the GNU project's opinion on the matter: gnu.org/gnu/linux-and-gnu.html. I take no position on the matter, at least not here, and this is not the place to debate it.
@BorisStitnicky - No need to debate, was completely clueless, and that link gave me the information level I was looking for +1
7 Answers 7
Bash supports all sorts of wildcards and expansions.
Your exact case would be handled by brace expansion, like so:
The above would expand to a single command with all three arguments, and be equivalent to typing:
$ rm -rf abc.log.2012-03-14 abc.log.2012-03-27 abc.log.2012-03-28
It's important to note that this expansion is done by the shell, before rm is even loaded.
Don't use "rm" if you wish to restore the files in future .You can use "rm-trash" utility : github.com/nateshmbhat/rm-trash
Use a wildcard ( * ) to match multiple files.
For example, the command below will delete all files with names beginning with abc.log.2012-03- .
I'd recommend running ls abc.log.2012-03-* to list the files so that you can see what you are going to delete before running the rm command.
For more details see the Bash man page on filename expansion.
If you want to delete all files whose names match a particular form, a wildcard (glob pattern) is the most straightforward solution. Some examples:
$ rm -f abc.log.* # Remove them all $ rm -f abc.log.2012* # Remove all logs from 2012 $ rm -f abc.log.2012-0[123]* # Remove all files from the first quarter of 2012
Regular expressions are more powerful than wildcards; you can feed the output of grep to rm -f . For example, if some of the file names start with "abc.log" and some with "ABC.log" , grep lets you do a case-insensitive match:
This will cause problems if any of the file names contain funny characters, including spaces. Be careful.
When I do this, I run the ls | grep . command first and check that it produces the output I want -- especially if I'm using rm -f :
$ ls | grep -i '^abc\.log\.' (check that the list is correct) $ rm -f $(!!)
where !! expands to the previous command. Or I can type up-arrow or Ctrl-P and edit the previous line to add the rm -f command.
This assumes you're using the bash shell. Some other shells, particularly csh and tcsh and some older sh-derived shells, may not support the $(. ) syntax. You can use the equivalent backtick syntax:
The $(. ) syntax is easier to read, and if you're really ambitious it can be nested.
Finally, if the subset of files you want to delete can't be easily expressed with a regular expression, a trick I often use is to list the files to a temporary text file, then edit it:
$ ls > list $ vi list # Use your favorite text editor
I can then edit the list file manually, leaving only the files I want to remove, and then:
(Again, this assumes none of the file names contain funny characters, particularly spaces.)
Or, when editing the list file, I can add rm -f to the beginning of each line and then:
Editing the file is also an opportunity to add quotes where necessary, for example changing rm -f foo bar to rm -f 'foo bar' .