Linux быстро удалить папку

How to delete a non-empty directory in Terminal?

I’m unable to remove a directory like «New Folder» using all the above detailed commands. It’s double worded. But I want to remove that directory. Any suggestions will be welcomed. T.Divakara, Bengaluru, India

Its the blank space in the file name, try using ‘quotes’ > rmdir ‘New Folder’ < then the folder disapers, or use escape characters for non-vissible characters.

4 Answers 4

Use the below command :

It deletes all files and folders contained in the lampp directory.

In case user doesn’t have the permission to delete the folder:

Add sudo at the beginning of the command :

Otherwise, without sudo you will be returned permission denied. And it’s a good practice to try not to use -f while deleting a directory:

Note: this is assuming you are already on the same level of the folder you want to delete in terminal, if not:

sudo rm -r /path/to/folderName 

FYI: you can use letters -f , -r , -v :

  • -f = to ignore non-existent files, never prompt
  • -r = to remove directories and their contents recursively
  • -v = to explain what is being done

In my humble opinion, it’s a good practice never to add the «f» on first attempt. Its purpose is to ignore certain warning prompts that may be important, especially if you’ve accidentally done it on/from the wrong directory. In my opinion it’s good to try without the «f» first, then only if you are encountering a lot of warning prompts and you’re sure it’s OK to ignore them all, Ctrl+C out of it and repeat the command with the «f».

@thomasrutter . Agree. A file «xxx» owner: root and group: root can BE deleted with the -f switch; and without sudo. This is the message without -f: «rm: remove write-protected regular file ‘/home/william/.cache/netbeans/v08.01/tmp/xxx’? _». _Tread gently.

However, you need to be careful with a recursive command like this, as it’s easy to accidentally delete a lot more than you intended.

It is a good idea to always double-check which directory you’re in, and whether you typed the command correctly, before pressing Enter.

Safer version

Adding -i makes it a little safer, because it will prompt you on every deletion. However, if you are deleting many files this is not going to be very practical. Still, you can try this first.

Many people suggest using -f (combining it into -Rf or -rf ), claiming that it gets rid of annoying prompts. However, in normal cases you don’t need it, and using it suppresses some problems that you probably do want to know about. When you use it, you won’t be warned if your arguments supply a non-existing directory or file(s): rm will just silently fail to delete anything. As a general rule, try first without the -f : if there are problems with your arguments, then you’ll notice. If you start getting too many prompts about files without write access, then you can try it with -f . Alternatively, run the command from a user (or the superuser using sudo) that has full permissions to the files and directories you’re deleting to prevent these prompts in the first place.

Читайте также:  Linux kernel driver firmware

Источник

Как удалить каталог Linux

В операционной системе Linux можно выполнить большинство действий через терминал. Удаление каталога Linux — это достаточно простое действие, которое можно выполнить просто открыв файловый менеджер.

Однако в терминале это делается немного быстрее и вы получаете полный контроль над ситуацией. Например, можете выбрать только пустые папки или удалить несколько папок с одним названием. В этой статье мы рассмотрим как удалить каталог Linux через терминал.

Как удалить каталог Linux

Существует несколько команд, которые вы можете использовать для удаления каталога Linux. Рассмотрим их все более подробно. Самый очевидный вариант — это утилита rmdir. Но с помощью нее можно удалять только пустые папки:

Другая команда, которую можно применить — это rm. Она предназначена для удаления файлов Linux, но может использоваться и для папок если ей передать опцию рекурсивного удаления -r:

Такая команда уже позволяет удалить непустой каталог Linux. Но, можно по-другому, например, если вы хотите вывести информацию о файлах, которые удаляются:

Команда -R включает рекурсивное удаление всех подпапок и файлов в них, -f — разрешает удалять файлы без запроса, а -v показывает имена удаляемых файлов. В этих примерах я предполагаю что папка которую нужно удалить находится в текущей рабочей папке, например, домашней. Но это необязательно, вы можете указать полный путь к ней начиная от корня файловой системы:

Читайте подробнее про пути в файловой системе в статье путь к файлу Linux. Теперь вы знаете как удалить непустой каталог в консоли linux, далее усложним задачу, будем удалять папки, которые содержат определенные слова в своем имени:

find . -type d -name «моя_папка» -exec rm -rf <> \;

Подробнее про команду find смотрите в отдельной статье. Если кратко, то -type d указывает, что мы ищем только папки, а параметром -name задаем имя нужных папок. Затем с помощью параметра -exec мы выполняем команду удаления. Таким же образом можно удалить только пустые папки, например, в домашней папке:

find ~/ -empty -type d -delete

Как видите, в find необязательно выполнять отдельную команду, утилита тоже умеет удалять. Вместо домашней папки, можно указать любой нужный вам путь:

find /var/www/public_html/ -empty -type d -delete

Перед удалением вы можете подсчитать количество пустых папок:

find /var/www/public_html/ -empty -type d | wc -l

Другой способ удалить папку linux с помощью find — использовать в дополнение утилиту xargs. Она позволяет подставить аргументы в нужное место. Например:

find ~/ -type f -empty -print0 | xargs -0 -I <> /bin/rm «<>«

Опция -print0 выводит полный путь к найденному файлу в стандартный вывод, а затем мы передаем его команде xargs. Опция -0 указывает, что нужно считать символом завершения строки \0, а -I — что нужно использовать команду из стандартного ввода.

Если вы хотите полностью удалить папку Linux, так, чтобы ее невозможно было восстановить, то можно использовать утилиту wipe. Она не поставляется по умолчанию, но вы можете ее достаточно просто установить:

Читайте также:  Jetflash recovery tool linux

Теперь для удаления каталога Linux используйте такую команду:

Опция -r указывает, что нужно удалять рекурсивно все под папки, -f — включает автоматическое удаление, без запроса пользователя, а -i показывает прогресс удаления. Так вы можете удалить все файлы в папке linux без возможности их восстановления поскольку все место на диске где они были будет несколько раз затерто.

Выводы

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Как удалить папку в Linux через терминал (консоль)

Операционная система Linux позволяет выполнять практически любые действия при помощи терминала или консоли. Более того, при администрировании Linux-серверов работа с терминалом – это основной способ управления системой. Поэтому навыки работы с консолью абсолютно необходимы, если вы хотите действительно научиться работать с Linux.

В данной инструкции мы рассмотрим тему удаления папок (каталогов). Здесь вы узнаете, как удалить пустую папку или каталог с файлами через терминал или консоль. Также мы немного затронем тему создания и поиска папок.

Как удалить пустую папку в Linux через терминал

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

Синтаксис команды rmdir выглядит следующим образом:

rmdir [-p] [-v | --verbose] [--ignore-fail-on-non-empty] directories …

Разберем доступные параметры подробней:

rmdir --help Получение справки о команде rmdir rmdir -p Удаление всех пустых папок по всему указанному пути. rmdir -v или rmdir --verbose Вывод подробной информации о всех удаляемых объектах. rmdir --ignore-fail-on-non-empty Игнорирование ошибок, которые возникают при попытке удаления не пустых папок.

Для того чтобы просто удалить пустую папку нужно ввести « rmdir foldername ». Где « foldername » это название удаляемого объекта. При желании можно удалить сразу несколько папок, для этого достаточно перечислить их через пробел.

удаление пустых папок в Linux

Если необходимо удалить каталог, в котором есть другие каталоги (без файлов), то можно воспользоваться параметром « -p ». Для этого нужно ввести « rmdir -p » и указать полный путь. Например, если в каталоге folder1 есть другой каталог folder2, то мы можем удалить их сразу одной командой « rmdir -p folder1/folder2 ».

удаление дерева пустых папок в Linux

При использовании параметра « -v » в консоль будет выведена подробная информация о процессе удаления каталогов.

удаление пустых папок с выводом информации

А при использовании параметра « ignore-fail-on-non-empty » команда будет игнорировать ошибки, которые будут возникать при попытке удаления непустых каталогов.

удаление пустых папок с игнорированием ошибок

Нужно отметить, что также существует команда « mkdir », которая предназначена для создания папок и обладает точно таким же синтаксисом.

создание папок в Linux

С ее помощью вы можете создать папки по одной или целым деревом (при использовании параметра « -p »).

Как удалить папку с содержимым (с файлами) в Linux

Если нужно удалить папку с каким-то содержимым, например, с файлами, то тут уже нужно использовать команду « rm ». Данная Linux команда предназначена для удаления файлов, но с ее помощью можно удалять и каталоги, если использовать параметр «-r», который включает рекурсивное удаление.

Читайте также:  Изменить версию python по умолчанию linux

Синтаксис команды rm выглядит следующим образом:

Разберем основные параметры команды rm:

-f, --force Игнорировать несуществующие файлы, ничего не спрашивать. -i Спрашивать перед каждым удалением. -I Спрашивать перед удалением более чем 3 файлов и при использовании рекурсивного удаления. -r, -R, --recursive Удаление каталогов и их содержимого рекурсивно. -v, --verbose Вывод информации об удаляемых каталогах. --help Вывод справочной информации о команде. --version Вывод информации о версии.

Для удаления папок с файлами нам нужно использовать параметр « -r ». Введите « rm -r » и укажите название папки, которую нужно удалить. Например, если у нас есть каталог folder1 с какими-то файлами, то мы можем ее удалить, введя команду « rm -r folder1 »

удаление папок с файлами в Linux

Если необходимо, чтобы удаление папок сопровождалось запросом, то вместе с параметром « -r » можно использовать параметр « -i ». В этом случае каждая операция, которую будет выполнять команда, будет требовать разрешения пользователя. При этом команда для удаления папки folder1 будет выглядеть как «rm -ri folder1 ».

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

Обратите внимание, во всех примерах предполагается, что удаляемый объект находится в текущей папке. Но, при необходимости вы можете удалять каталоги используя полный путь.

удаление папок с выводом информации

Например, вы можете указать « rm -rv /home/aleks/folder1 » для того, чтобы удалить папку folder1 с выводом подробной информации.

Как удалить все файлы в папке Linux

В некоторых случаях может возникнуть необходимость удалить все файлы в папке при этом не удаляя саму папку. Для решения такой задачи можно использовать вот такую команду « rm -rf /path/to/directory/* ». Данная команда удалит все файлы и папки (рекурсивно удалит все содержимое) по указанному пути.

удалит все файлы и папки

Если же нужно удалить все файлы в папке, но оставить вложенные папки, то это можно сделать командой « rm -f /path/to/directory/* ».

удалить все файлы в папке

Альтернативный вариант — это удаление самой папки со всем содержимым (включая скрытые файлы и каталоги) и повторное ее создание.

удаление самой папки со всем содержимым

Для этого подойдет команда « rm -rf foldername && mkdir foldername ».

Поиск и удаление с помощью команды find

Если нужно не просто удалить какую-то определенную папку с файлами, а сначала найти ее, то тут поможет Linux-команда find. Данная команда является мощным инструментом для поиска файлов и выполнения с ними определенных операций. Среди прочего ее можно использовать для поиска и удаления файлов.

Например, чтобы найти и удалить пустые папки в домашнем каталоге можно выполнить команду:

find ~/ -empty -type d -delete

Данная команда использует следующие параметры:

-empty Поиск пустых объектов. -type d Поиск каталогов. -delete Удаление найденных объектов.

поиск и удаление пустых папок

Другой пример – поиск и удаление папок с определенным названием. Так, чтобы удалить папки, содержащие в названии слово « test » можно выполнить следующую команду:

find . -type d -name "*test*" -exec rm -rf <> \;

Данная команда содержит следующие параметры:

-type d Поиск каталогов. -name Поиск объектов с определенным именем. -exec Выполнение команды.

поиск и удаление папок с определенным названием

Указанные выше примеры использования Linux-команды find – лишь часть ее возможностей. Рассмотреть все варианты ее использования в рамках этой статьи будет невозможно.

Источник

Оцените статью
Adblock
detector