скидка 50% все планы, время ограничено. Начиная с $2.48/mo
осталось 12 минут
Серверы и ОС

Как безопасно удалить каталог в Linux: rmdir, rm -r, find

Ник Сильвер By Ник Сильвер 12 минут чтения Обновлено 22 сентября 2025 г.
Одинокий ультрареальный ноутбук под углом 3/4 на мокрой поверхности; на экране показаны две четкие терминальные линии: ls -ld -- '$DIR' rm -I -r -- '$DIR' Из правого порта голубая/пурпурная голографическая лента изгибается к папке из манильской бумаги, плавающей справа от ноутбука; правая половина папки рассыпается в воздухе в мелкую бумажную пыль. Освещение BR2049, УФ-окантовка, тонкие дождевые пятна, натриево-янтарная дымка + только одиночная низкая линия горизонта.

Выберите правильный инструмент, и удаление папок в Linux станет проще простого. Использовать rmdir для пустых путей, РМ -р для каталогов, в которых еще есть контент, и находить когда ты хочешь только очистить то, что внутри. Это как удалить каталог в Linux, со спокойными настройками по умолчанию, быстрыми проверками и исправлениями ошибок, которые могут помешать. Если цель — скорость, просмотрите таблицу снимков, а затем продолжайте читать, чтобы узнать о перилах безопасности.

 

 

Обзор команд: копировать, вставить, двигаться дальше

Прежде чем мы углубимся в подробности, вот высокочастотные вакансии в одном месте. Скопируйте из среднего столбца, затем примените примечание.

Задача Самая безопасная быстрая команда Дополнительные флажки или примечания
Удалить пустой каталог rmdir КАТАЛОГ or rm -d КАТАЛОГ Добавлять -p удалить родителей, если они станут пустыми.
Удалить непустой каталог с приглашением один раз rm -I -r КАТАЛОГ Сбалансирован для скорости и безопасности.
Принудительно удалить непустой каталог rm -rf — КАТАЛОГ Подтвердите с помощью ls -ld — КАТАЛОГ прежде чем запустить его.
Сохранить родительское, очистить содержимое найти DIR -minглубина 1 -удалить Также обрабатывает скрытые файлы и папки.
Удалить только пустые каталоги найти DIR -тип d -пустой -удалить Аккуратный проход после развертывания.
Удалить по шаблону имени найти DIR -type d -name 'cache*' -prune -exec rm -rf {} + Быстро работает на больших деревьях.

Держите этот снимок под рукой, пока вы решаете, как удалить каталог в Linux. 

Удалить пустые каталоги с помощью rmdir or РМ -д

Ящик ультрареалистического стального шкафа для документов выдвинут полностью, видны рельсы и фетровые прокладки, он абсолютно пустой. Спереди крошечные рельефные наклейки: RMDIR и EMPTY. Мягкая натриево-янтарная дымка плывет за слабым силуэтом горизонта; вдоль полированной металлической кромки блестят голубые вывески; микрочастицы и микроцарапины кажутся правдой.

Пустые каталоги являются случаем низкого риска. Если вам нужно только удалить лист, rmdir делает именно это; если ты предпочитаешь остаться rm, использовать РМ -д для того же результата. Обе команды останавливаются на непустые пути, который дает новичкам возможность узнать, как удалить каталог в терминале, полезным ограждением.

  • rmdir ПРОЕКТ/tmp удаляет пустую папку и автоматически возвращается, когда она больше не существует.
  • rmdir -p foo/bar/baz удаляет путь, а затем родительские каталоги, если каждый из них становится пустым, очищая леса за один раз.
  • rm -d пустая_папка удаляет только если каталог пуст, зеркало rmdir для тех, кто живет на rm.
  • rmdir –игнорировать-сбой при непустом DIR скрывает текст ошибки «не пусто» в скриптах, где шум имеет значение.
  • Добавлять -v для обратной связи, например, rmdir -pv foo/bar/baz.

Распространенная проблема при попытке удалить каталог в Linux заключается в том, что если в папке все еще есть файлы, rmdir отказывается бежать. Это ваш сигнал переключиться на рекурсию. 

Читайте также: Подключитесь к Linux-серверу с помощью XRDP.

Удалить непустые каталоги с помощью rm

Ультрареальный промышленный измельчитель бумаги в роли единственного героя; рот забит множеством папок и разделителей. Папки явно набиты бумагами. Крошечный металлический значок спереди гласит: RM-R; небольшой треугольник опасности рядом с ним гласит: СИЛА.

Рекурсивное удаление - это РМ -р or РМ -РФ. Компромисс, по сути, заключается в скорости и подсказках. Люди, изучающие, как удалять непустые каталоги в Linux, начинают с РМ -р и добавьте подсказку. Команды, которые автоматизируют добавление -f после того, как они заблокируют проверки пути.

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

  • Подскажите один раз: rm -I -r КАТАЛОГ — спрашивает один раз, прежде чем спуститься, это лучше подходит, чем -i на больших деревьях.
  • Подскажите все: rm -ri КАТАЛОГ медленный, но полезный на небольших деревьях, когда вы хотите видеть каждый шаг.
  • Сила и рекурсия: rm -rf КАТАЛОГ пропускает подсказки и большинство ошибок; проверить с помощью страдающий, ls -ld — КАТАЛОГи эхо «$DIR» прежде чем нажать Enter.
  • Подробно: -v печатает каждый удаленный путь, например, rm -rfv сборка/.
  • Защита корней и креплений: современные системы блокируют РМ -РФ / с помощью –preserve-корень; в скриптах добавьте –одна файловая система чтобы вы не пересекали крепления.

Прежде чем выполнять принудительное удаление на занятой машине, потратьте полминуты на проверку цели. Распечатайте его с помощью ls -ld — «$DIR», затем посмотрите на цитирование и глобусы. Самый простой способ узнать, как удалить каталог в Linux, — попробовать -I сначала, затем повторите неинтерактивно. Спокойные проверки, повторяемые привычки.

Linux-VPS Упрощенный Linux-хостинг

Хотите лучший способ размещения своих веб-сайтов и веб-приложений? Разрабатываете что-то новое? Просто не нравится Windows? Вот почему у нас есть Linux VPS.

Получите свой Linux VPS

Странные имена, ведущие тире и скрытые проблемы

Поперек рамы туго натянута защитная лента, ультрареалистичная виниловая текстура с тонкими складками. Черная надпись повторяет надпись -TMP через определенные промежутки времени после каждого ВНИМАНИЯ.

Некоторые пути начинаются с тире или включают байты, которые затрудняют анализ. Передайте чтобы остановить анализ параметров, или добавить ./ перед именем.

Безопасные способы таргетинга на странные имена:

rm -r -- --weird
rm -r ./-cache

Эти крошечные привычки делают удаление каталога в Linux гораздо менее напряженным на общих серверах и в удаленных сеансах. Если вам нужно сохранить родительский элемент, но удалить то, что находится внутри, переключитесь на команды, учитывающие глубину; об этом далее в нашем руководстве «Как удалить каталог в Linux».

Сохраните папку, пустая, что внутри

Ультрареалистичная папка из манильской бумаги с небольшим нижним люком, встроенным в угол со стороны язычка, шарнирная и слегка приоткрытая, так что выпадает слабый поток голографических «осколков файла». На вкладке выгравировано: НАЙТИ и РАЗУМ1 (для -minглубины 1).

Для большого количества работы требуется чистый каталог вместо отсутствующего. Ротация журналов, построение конвейеров, обслуживание VPS. Два шаблона описывают, как удалить все файлы в каталоге в Linux, оставив родительский элемент нетронутым.

  • Пропустить родительский элемент с помощью находить:
find /var/tmp/app -mindepth 1 -delete
  • Или выполнить rm по партиям:
find ./cache -mindepth 1 -exec rm -rf {} +

Оба обрабатывают скрытые записи (включая точечные файлы), и здесь простой РМ * скучает по ним. Если ваш вопрос заключался в том, как удалить все файлы в каталоге в Linux, это надежный способ.

В этом помогают однострочники, хотя многим командам нужны фильтры по имени или глубине. Вот где находить дает вам простор без догадок.

Читайте также: Список запущенных служб в Linux

Целевые удаления с помощью находить: Имена, Глубина, Обрезка

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

Задача Снимок команды Примечания
Удалить только кэш*/ каталоги по проекту находить . -type d -name 'cache*' -prune -exec rm -rf {} + -чернослив пропускает спуск в спички; быстрее на огромных деревьях.
Удалить каталоги по глубине find ./dist -minглубина 1 -maxглубина 1 -type d -exec rm -rf {} + Ориентирован только на детей первого уровня в возрасте до расстояние/.
Удалить только пустые каталоги находить . -тип d -пустой -удалить Аккуратный проход после развертывания.
Удалить файлы, соответствующие шаблону найти журналы -тип f -имя '*.gz' -удалить Оставляет свежие бревна нетронутыми.
Удалить все, но оставить родителя найти /data/tmp -minглубина 1 -удалить Службы продолжают использовать родительский каталог.

Использовать -печатать для пробного прогона, затем снимите его для настоящего прохода. Это практическая сторона удаления каталогов в Linux, предсказуемый объем и быстрое выполнение. Попался, на каком-то минимальном BusyBox собирает -удалить действие отсутствует; использовать -exec rm -rf {} + вместо.

Эти шаблоны уведут вас далеко. Добавьте несколько ограждений, чтобы предотвратить редкую и дорогостоящую ошибку.

Перила безопасности, которые спасут вас от самого себя

Сверхреалистичный навесной замок с биркой + засов в сборе в роли одинокого героя, матовая сталь и потертая красная эмаль, капля конденсата на дужке; На засове свисает оптоволоконный ярлык с тремя жирными гравюрами: RM-I, ONE FS, СОХРАНИТЬ КОРЕНЬ.

Мощные команды заслуживают спокойных настроек по умолчанию. Выработайте эти привычки, чтобы удаление каталога в Linux с помощью команд не лишило вас здравомыслия.

  • Предпочитайте одно приглашение с rm -I -r КАТАЛОГ пока вы проверяете путь на экране.
  • Пути цитирования каждый раз: rm -rf — «$DIR» защищает от пробелов, глобусов и имен, начинающихся с тире.
  • Подтвердите точную цель: ls -ld — «$DIR» показывает одну строку с режимом, владельцем и путем.
  • Пребывание внутри файловой системы: rm -rf –одна файловая система «$DIR» предотвращает переход в смонтированные тома.
  • Защита корней оставлена ​​включенной, продолжайте –preserve-корень на месте.
  • При необходимости очистите неизменяемый бит: lsattr -d «$DIR» проверить, чаттр -и «$DIR» чтобы удалить его.

Если удаление по-прежнему не удается или зависает, проработайте обычные подозреваемые.

Запустите тесты очистки на Linux VPS Cloudzy, а затем продолжайте сборку

Стоечный сервер Ultrareal высотой 1U надежно расположен в облаке (облако = VPS). Короткий оптоволоконный патч SFP+ соединяет сервер с открытым ноутбуком под углом 3/4. На стеклянном терминале ноутбука две большие гравюры: RM -I -R и ROLLBACK (переключатель горит). На лицевой стороне стойки небольшие значки: NVME, 10 GBPS, DDR5.

Если вам нужен стабильный удаленный ящик для попыток rm, rmdir, и находить безопасно, раскрутись Linux VPS-хостинг и работать в чистой оболочке. Это доступно, быстро и доступно в 12 локаций по всему миру с 11 дистрибутивов Linux готов идти. Вы получаете корневой доступ, NVMe твердотельный накопитель хранение и Оперативная память DDR5 по современным планам, плюс защита от DDoS и 99,95% времени безотказной работы обязательство. Высокая пропускная способность и низкая задержка являются частью пакета, с соединениями до 10 Gbps указаны в плановых картах.

  • Глобальное присутствие: разверните более чем 12 мест, включая Нью-Йорк, Лос-Анджелес, Майами, Амстердам, Лондон, Германию, Швейцарию, Юту, Даллас, Лас-Вегас и Сингапур, для более быстрого доступа к вашим пользователям.
  • Root-доступ + 11 дистрибутивов: выберите Linux, который вам нужен, и получите полный контроль с первого дня.
  • Современное оборудование: твердотельный накопитель NVMe и оперативная память DDR5 обеспечивают питание инстансов; производительность остается высокой при интенсивном вводе-выводе.
  • Сеть + время безотказной работы: подключение с низкой задержкой, высокая пропускная способность и целевое время безотказной работы 99,95 % помогают выполнять запланированные задания вовремя.
  • Безопасность: защита от DDoS включена на все серверы, поэтому вероятность прерывания планового обслуживания снижается.
  • Удобство: предустановленные варианты ОС, бесплатный IPv6 и несколько способов оплаты упрощают настройку.

Предпочитаете полноценный рабочий стол? При оформлении заказа выберите Linux РДП приложение в один клик. Он предоставляет Linux VPS с XRDP, ГДМ3и Графический интерфейс GNOME предварительно установлен на Убунту, поэтому вы можете подключиться удаленно одним щелчком мыши. Он работает в тех же 12 местах и ​​сохраняет 99,95% времени безотказной работы цель. Есть без дополнительной платы для предустановленной конфигурации RDP.

Короче говоря, запустите доступный Linux VPS, выберите свой дистрибутив, сохраните root и, при необходимости, добавьте рабочий стол Linux RDP во время покупки. Затем попрактикуйтесь в удалении в интерактивном режиме, сделайте снимок и повторяйте, пока набор команд не станет вашей второй натурой.

Устранение неполадок: «Отказано в разрешении», «Каталог не пуст», «Занятые пути».

Единственная ультрареальная папка, расположенная над узким желобом (этот желоб символизирует устранение неполадок, поэтому выгравируйте на нем значок устранения неполадок); внутри него подпапки меньшего размера и бледные значки .dotfiles тускнеют при падении. Гравировки на желобе сверху вниз: СИМПТОМ, ПРОВЕРЬТЕ, ИСПРАВИТЬ; противоположная сторона: НЕ ПУСТО, ПОСМОТРЕТЬ, НАЙТИ-УДАЛИТЬ.

Большинство неудач группируются в несколько закономерностей. Используйте этот симптом → проверьте → исправьте поток, чтобы удаление каталога в Linux не останавливало развертывание.

1) «Отказано в разрешении» для вашего каталога.
Проверьте атрибуты с помощью lsattr -d КАТАЛОГ. Если неизменяемый флаг i установлен, удалите его с помощью sudochattr -i КАТАЛОГ, затем повторите попытку. Это проявляется в защищенных системах и некоторых контейнерах.

2) «Работа не разрешена» даже при судо
Убедитесь, что монтирование не доступно только для чтения. крепление | grep КАТАЛОГ or найти каталог дает вам состояние. Перемонтируйте чтение и запись для операции или выберите другой путь.

3) «Каталог не пуст» после rmdir
Записи все еще присутствуют. Переключиться на:

find DIR -mindepth 1 -delete

Он включает в себя скрытые файлы и вложенный контент.

4) Сервис воссоздает папку
Работающий модуль записывает в путь. Остановите или перезапустите чисто, затем удалите. Если сама среда нарушена, руководство по команда systemctl не найдена поможет вам исправить это в первую очередь. Например, у нас был Nginx, пишущий в /вар/журнал/nginx/ на промежуточной коробке; остановка nginx.service очищен лсоф, удаление выполнено успешно, и журналы возобновляются без ошибок.

5) «Устройство или ресурс занято»
Процесс содержит открытый дескриптор каталога. lsof +D КАТАЛО or фьюзер -vm КАТАЛОГ показывает, что активно; остановите его начисто, затем удалите. Если вам нужно быстро просмотреть сокеты перед очисткой журналов, Команда Netstat Linux кусок охватывает быструю проверку.

6) Странные имена: пробелы, символы новой строки или дефис.
Использовать or ./ перед именами, начинающимися с тире, и заключайте в кавычки каждую строку. Для массовой очистки нечетных имен запустите находить . -print0 | ксаргс -0 поэтому пробелы никогда не нарушают команду.

Благодаря этим исправлениям большинство препятствий устранено. Если постоянство не является вашим планом, используйте вместо этого поток мусора.

Корзина вместо удаления: мусор-кли и гио мусор

Ультрареалистичная синяя настольная мусорная корзина (матовый полимер с крошечными отметками от инъекций, прорезь), край сложенной бумажной папки выглядывает из прорези. Вдоль губы выгравировано: TRASH-CLI, TRASH. Небольшой боковой значок светится «ВОССТАНОВЛЕНИЕ», указывая на разворот.

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

  • ПУТЬ мусора gio перемещает файлы и каталоги в корзину; список gio: мусор:// позволяет просматривать.
  • С мусор-кли, использовать мусор ПУТЬ, список мусора, восстановление мусора, и пустой мусор для простого рабочего процесса командной строки.

Это медленнее, чем rm, однако обмен на безопасность имеет смысл, если вам нужен дополнительный этап проверки. Итак, если вам нужно знать, как удалить каталог в Linux, не рискуя реальным набором данных, начните с мусора, а затем перейдите к rm.

Заключительные мысли

Теперь у вас есть полный набор инструментов для удаления каталогов в Linux, который включает в себя rmdir для пустых путей, РМ -Я -р для безопасной рекурсии, РМ -РФ только после того, как вы подтвердите цель и найти -minглубина 1 -удалить когда вам нужно очистить содержимое, не удаляя родителя. Цитируйте пути, сохраняйте –preserve-кореньоставайтесь в одной файловой системе и удалите неизменяемый бит, если он вас блокирует; проверки устранения неполадок решают все остальное.

И не забывайте: если вам нужен чистый удаленный компьютер для реальной практики, раскрутите Cloudzy. Linux VPS сервер; он доступен по цене и надежен для безопасных пробежек на сухой дороге, а благодаря нашему Linux RDP в один клик вы также получаете сеанс рабочего стола, чтобы вы могли выполнять удаления в полном графическом интерфейсе.

 

Часто задаваемые вопросы

В чем разница между rm и rmdir?

rmdir удаляет только пустые каталоги и может удалять родительские каталоги, которые становятся пустыми с помощью -p. rm удаляет файлы и каталоги; добавьте -r для рекурсии и -I или -i для подсказок.

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

Используйте rm -rf — DIR после проверки пути. Добавьте -v, если вам нужен построчный журнал. Некоторые администраторы до сих пор выполняют один пробный проход с помощью rm -I -r перед финальным запуском.

Как удалить содержимое, а не сам каталог?

Запустите find DIR -minглубина 1 -delete. Он отвечает, как очистить каталог в Linux и сохранить родительский каталог для служб.

Почему rmdir говорит «Каталог не пуст», когда я не вижу файлов?

Скрытые файлы все еще там. ls -A покажет их, затем используйте шаблон find -mineepth 1 -delete.

Как исправить «Операция не разрешена» или «В разрешении отказано»?

Проверьте неизменяемый бит с помощью lsattr -d DIR и удалите его с помощью sudochattr -i DIR, если он присутствует. Кроме того, убедитесь, что монтирование не доступно только для чтения. Если служба воссоздает пути во время очистки, сначала устраните проблему с устройством; приведенная выше часть systemctl помогает.

Делиться

Еще из блога

Продолжайте читать.

Лучшие самостоятельные приложения, которые можно запускать с помощью Cosmos Cloud: обложка с панелями приложений вокруг информационной панели Cosmos.
Серверы и ОС

Лучшие приложения для самостоятельного размещения, которые можно запускать с помощью Cosmos Cloud: файлы, медиафайлы, пароли, автоматизация и многое другое!

Возможно, вы настроили Cosmos Cloud и теперь хотите посмотреть, какие приложения хорошо с ним сочетаются, или, может быть, вы еще даже не выбрали Cosmos и просто хотите посмотреть, насколько хорошо он подходит для вашей работы.

Ник СильверНик Сильвер 16 минут чтения
Portainer и Cosmos Cloud для управления приложениями Docker покрыты диаграммой гибридной настройки и неоновыми операциями и блокировками доступа.
Серверы и ОС

Portainer против Cosmos Cloud: лучше всего подходит для управления приложениями Docker

Если вы уже знакомы с Docker и вам просто нужен более простой способ запуска растущего стека приложений, вот краткий ответ на вопрос Portainer и Cosmos Cloud. Портейнер — более сильный выбор для режиссера

Ник СильверНик Сильвер 14 минут чтения
Графика Cosmo Cloud, CasaOS и Umbrel показывает три автономных пути внутри одного абстрактного облачного сетевого мира.
Серверы и ОС

Cosmos Cloud, CasaOS или Umbrel: какая автономная платформа подойдет для вашей установки?

Короткий ответ: CasaOS по-прежнему является самым простым местом для начала, Umbrel имеет самый чистый и тщательно продуманный интерфейс, а Cosmo Cloud имеет больше смысла, если вы хотите более жесткий контроль над doma.

Ник СильверНик Сильвер 11 минут чтения

Готовы к развертыванию? От $2,48 в месяц.

Независимое облако, с 2008 г. AMD EPYC, NVMe, 40 Гбит/с. 14-дневный возврат денег.