Как удалить следующий каталог?
Я набрал:
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), у которого есть полные права доступа к файлам и каталогам, которые вы удаляете, чтобы в первую очередь предотвратить эти запросы.
Кстати, я лично хотел удалить каталог, содержащий защищенный от записи файл / s (.git и подкаталоги), и в конце концов понял, что мне также нужно стать суперпользователем, чтобы успешно удалить эти файлы. Вот что я сделал:
#became super user
sudo su -
#deleted contents of, and then the directory, harvey_snake/
rm -R harvey_snake/
У меня были некоторые проблемы с этим сегодня, но я преодолел это с помощью sudo.
Предостережение: будьте уверены, что вы хотите полностью удалить объект, прежде чем использовать приведенную ниже команду.
$ sudo rm -R [Directory name]
Я успешно сделал это сегодня и удалил много непустых каталогов, которые, как я подтвердил, мне не нужны / не нужны.
Я использую 14.04 LTS
Существует множество способов удалить каталог в режиме CLI. Это зависит от того, как вам удобно.
rm -rvf /path/to/directory
-r
= рекурсивно удалять каталоги и их содержимое -v
= объяснять, что делается -f
= игнорировать несуществующие файлы, никогда не запрашивать Если вы новичок в Linux, используйте справочные страницы команд ( man rm
) для большей опции и большей точности.