Как удалить непустой каталог в терминале?

Как мне удалить следующий каталог?

Я напечатал:

rmdir lampp

Появляется эта ошибка:

rmdir: failed to remove `lampp': Directory not empty

Есть ли команда для удаления всех файлов в каталоге и удаления папки каталога?

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

rm -rf lampp

Он удаляет все файлы и папки, содержащиеся в lampp каталог.

В случае, если у пользователя нет разрешения на удаление папки:

Добавь sudo в начале команды :

sudo rm -rf folderName

В противном случае, без sudo вам будет возвращено разрешение с отказом. И это хорошая практика - стараться не использовать -f при удалении каталога:

sudo rm -r folderName

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

sudo rm -r /path/to/folderName

К вашему сведению: вы можете использовать буквы -f, -r, -v:

  • -f = чтобы игнорировать несуществующие файлы, никогда не запрашивайте
  • -r = для рекурсивного удаления каталогов и их содержимого
  • -v = объяснить, что делается
rm -R lampp

Однако вам нужно быть осторожным с такой рекурсивной командой, как эта, так как легко случайно удалить намного больше, чем вы намеревались.

Рекомендуется всегда перепроверять, в каком каталоге вы находитесь, и правильно ли вы ввели команду, прежде чем нажимать Enter.

Более безопасная версия

rm -R -i lampp

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

Примечание о -f вариант:

Многие люди предлагают использовать -f (объединяя его в -Rf или -rf), утверждая, что это избавляет от раздражающих подсказок. Однако в обычных случаях он вам не нужен, и его использование устраняет некоторые проблемы, которые вы, вероятно, делать хочу знать об этом. Когда вы используете его, вы не будете предупреждены, если в ваших аргументах указан несуществующий каталог или файл (ы): rm просто молча ничего не удалит. Как правило, сначала попробуйте без -f: если с вашими аргументами возникнут проблемы, вы это заметите. Если вы начнете получать слишком много подсказок о файлах без доступа на запись, вы можете попробовать это с помощью -f. В качестве альтернативы, запустите команду от пользователя (или суперпользователя, использующего sudo), который имеет полные права доступа к файлам и каталогам, которые вы удаляете, чтобы в первую очередь предотвратить появление этих запросов.

Существует множество способов удалить каталог в режиме CLI. Это зависит от того, какой способ вам удобен.

rm -rvf /path/to/directory  
  • -r = рекурсивно удалять каталоги и их содержимое
  • -v = объясните, что делается
  • -f = игнорировать несуществующие файлы, никогда не запрашивать

Если вы новичок в Linux, используйте справочные страницы команд (man rm) для большего выбора и большей точности.

Сегодня у меня были некоторые проблемы с этим, но я преодолел их с помощью sudo.

Предостережение: Будьте очень уверены, что вы хотите удалить все это целиком, прежде чем использовать приведенную ниже команду.

$ sudo rm -R [Directory name]

Я успешно сделал это сегодня и удалил много непустых каталогов, которые, как я подтвердил, мне не нужны / не нужны.

Я использую 14.04 LTS

Достаточно просто сделать "rm -r lampp`.

Я не могу удалить каталог типа “Новая папка”, используя все вышеприведенные подробные команды. Это двусмысленно. Но я хочу удалить этот каталог. Любые предложения будут приветствоваться. Т.Дивакара, Бангалор, Индия

Its the blank space in the file name, try using ‘quotes’ > rmdir ‘Новая папка’ < then the folder disapers, or use escape characters for non-vissible characters.