rmdir – одна из тех базовых команд Linux, которые вы изучите в самом начале, но почти не будете использовать.
Почему?
Потому что может показаться, что rmdir используется для удаления каталогов (т.е. папок), на самом деле по умолчанию она удаляет только пустые каталоги.
Запутались?
Не стоит.
Давайте разберемся в этом подробнее.
Использование команды rmdir на Linux
Команда rmdir имеет простой синтаксис:
rmdir [option] directory
Рассмотрим его использование.
Удаление пустого каталога
Пустой каталог не содержит файлов или каталогов.
Если у вас есть пустой каталог, его можно легко удалить.
Никаких других опций не требуется.
rmdir directory_name
Удаление непустого каталога
Если вы попытаетесь удалить каталог, содержащий файлы и каталоги, команда завершится неудачей с сообщением об ошибке ‘Directory not empty’.
Вы можете принудительно удалить каталог вместе со всем его содержимым с помощью команды rmdir следующим образом:
rmdir --ignore-fail-on-non-empty directory_name
Хотя это работает, вы никогда не увидите, чтобы кто-то использовал этот метод.
Более распространенным (или популярным) способом удаления непустого каталога в Linux является использование команды rm.
rm -r directory_name
Удаление каталога вместе с родительским каталогом
Если у вас есть вложенная структура каталогов, вы можете указать опцию -p для удаления всей структуры.
Так, если у вас есть структура каталогов a/b/c, вы можете использовать:
rmdir -p a/b/c
Это аналогично rmdir a/b/c a/b a.
Обратите внимание, что каталоги также должны быть пустыми.
Или вы можете использовать флаг –ignore-fail-on-non-empty.
Подробный режим
Существует также режим verbose, который вы можете использовать.
Возможно, вы уже заметили, что команда rmdir не показывает никаких результатов для успешных команд.
Если вы хотите увидеть это, вы можете использовать опцию verbose -v:
rmdir -v directory
И это все о команде rmdir.
Поскольку в большинстве случаев вы будете иметь непустые папки, rmdir не сможет их удалить.
О команде –ignore-fail-on-non-empty мало кто помнит, поэтому команда rm -r более популярна.
см. также:
- 🐧 Как выполнить поиск Grep по всем файлам и во всех каталогах
- 🏦 18 основных команд Ubuntu и горячие клавиши терминала, которые должен знать каждый новичок
- 👸 Как использовать на Linux команду find для поиска файлов
- 💻 Как удалить файлы и каталоги в Linux
- 📁 Как удалить все файлы из каталога на Linux
Хотя это может показаться излишним, на самом деле мне очень нравится rmdir для определенных операций, потому что нет возможности случайно удалить файлы из каталогов, которые вы считали пустыми.