Удалить пустые директории linux

Linux и Windows: помощь админам и пользователям

Администрируем и настраиваем Windows, Linux.

5 практических примеров для удаления директорий в Linux

1. Как удалить пустую директорию в Unix?

Команда rmdir поможет нам удалить пустую директорию, то есть директорию без файлов и папок. Синтаксис команды очень прост:

В случае если директория не пуста вы увидите следующее сообщение об ошибке.

2. Как удалить вложенные директории в Linux?

С помощью опции -p вы можете удалить директорию с вложенной в неё поддиректорией.

Команда rmdir -p dir1/dir2/dir3 это эквивалент команды

3. Удаление директории с содержимым

Если вам потребовалось удалить директорию с содержимым вы можете использовать команду rm:

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

4. Интерактивное удаление

Во избежание случайного удаления нужных файлов рекомендую рассмотреть возможность использования опции -i для интерактивного удаления файлов и папок (особенно с правами root).

Рекурсивное и интерактивное удаление директории.

Интерактивное удаление файла.

5. Полезные алиасы для команд rm и rmdir

Вы можете использовать интерактивное удаление в качестве поведения команды rm по умолчанию.

Алиас для постоянного выполнения rm в интерактивном режиме

При использовании команды rm на самом деле будет выполняться команда rm -i. Но необходимо обратить внимание на один ньюанс. Не используйте опцию -i в дальнейшем, так как вы не получите желаемого эффекта. Рассмотрим пример:

В следующей команде использование -i не даст вам ожидаемый эффект..

В этом случае, при использовании алиаса, команду выше необходимо запускать следующим образом:

Все указанные ниже команды эквивалентны и выполняют один и тот же функционал.

Полезные ссылки:

Если вам необходима экспертная оценка здания, рекомендую заказать обследование готовых зданий специалистами научно-производственного центра «Технопласт»

Источник

Как удалить файлы и каталоги в терминале Linux?

Команды rm и rmdir удаляют файлы и каталоги в Linux, macOS и других Unix-подобных операционных системах. Они похожи на команды del и deltree в Windows и DOS. Эти команды очень мощные и имеют довольно много опций.

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

Как удалить файлы с помощью rm

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

Читайте также:  Windows 10 блокировать пользователя

Если файл не находится в текущем рабочем каталоге, укажите путь к местоположению файла.

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

Подстановочные знаки могут использоваться для выбора групп файлов, которые будут удалены. Знак * представляет несколько символов, а символ ? представляет один символ. Эта команда удалит все файлы изображений png в текущем рабочем каталоге.

Эта команда удалит все файлы с одним символьным расширением. Например, это удалит File.1 и File.2, но не File.12.

Если файл защищен от записи, вам будет предложено удалить файл. Вы должны ответить с помощью y или n и нажать «Enter».

Чтобы снизить риск использования rm с подстановочными знаками, используйте параметр -i (интерактивный). Для этого необходимо подтвердить удаление каждого файла.

Опция -f (сила) противоположна интерактивной. Он не запрашивает подтверждение, даже если файлы защищены от записи.

Как удалить каталоги с помощью rm

Чтобы удалить пустой каталог, используйте опцию -d (directory). Вы можете использовать подстановочные знаки (* и ?) В именах каталогов так же, как и в именах файлов.

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

Чтобы удалить не пустые каталоги, используйте параметр -r (рекурсивный). Чтобы было ясно, это удаляет каталоги и все файлы и подкаталоги, содержащиеся в них.

Если каталог или файл защищен от записи, вам будет предложено подтвердить удаление. Чтобы удалить не пустые каталоги и подавить эти приглашения, используйте вместе параметры -r (рекурсивный) и -f (принудительный).

Здесь требуется осторожность. Ошибка в команде rm -rf может привести к потере данных или неисправности системы. Это опасно, и осторожность — лучшая политика. Чтобы получить представление о структуре каталогов и файлах, которые будут удалены командой rm -rf, используйте команду tree .

Используйте apt-get для установки этого пакета в вашу систему, если вы используете Ubuntu или другой дистрибутив на основе Debian. В других дистрибутивах Linux используйте инструмент управления пакетами вашего дистрибутива Linux.

Выполнение команды tree дает простую для понимания диаграмму структуры каталогов и файлов под каталогом, из которого она запускается.

Вы также можете указать путь к команде tree чтобы он запускал дерево из другого каталога в файловой системе.

Команда rm также имеет параметры —one-file-system , —no-preserve-root , —preserve-root , но они рекомендуются только для опытных пользователей. Если вы что-то не так, вы можете случайно удалить все ваши системные файлы.

Как удалить каталоги с помощью rmdir

Есть еще одна команда rmdir , которую вы можете использовать для удаления каталогов. Разница между rm и rmdir том, что rmdir может удалять только пустые каталоги. Он никогда не удалит файлы.

Самый простой случай — удаление одного пустого каталога. Как и в случае с rm , вы можете передать несколько имен каталогов в rmdir или rmdir путь к каталогу.

Удалите один каталог в текущем каталоге, передав его имя в rmdir :

Удалите несколько каталогов, передав список имен в rmdir :

Удалите каталог не в текущем каталоге, указав полный путь к этому каталогу:

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

Читайте также:  Directx installation windows 10

Когда rmdir выдает ошибку «Directory not empty», он прекращает обработку каталогов, переданных ему в командной строке. Если вы попросили удалить четыре каталога, а в первом содержались файлы, rmdir выдаст вам сообщение об ошибке и больше ничего не сделает. Вы можете заставить его игнорировать эти ошибки с —ignore-fail-on-non-empty чтобы обрабатывать другие каталоги.

В следующем примере две папки были переданы в rmdir , это work/reports и work/quotes. Параметр —ignore-fail-on-non-empty включен в команду. В папке work/reports находятся файлы, поэтому rmdir не может удалить ее. Опция —ignore-fail-on-non-empty заставляет rmdir игнорировать ошибку и переходить к следующей папке, которую он должен обработать, это work/quotes. Это пустая папка, и rmdir удаляет ее.

Эта команда использовалась.

Вы можете использовать опцию -p (parent), чтобы удалить каталог, а также удалить его родительские каталоги. Этот прием работает, потому что rmdir начинается с целевого каталога, а затем возвращается к родительскому. Теперь этот каталог должен быть пустым, поэтому он может быть удален rmdir, и процесс повторяет шаг назад по пути, предоставленному rmdir.

В следующем примере команда, переданная в rmdir:

Каталоги invoices и work удаляются по запросу.

Используете ли вы Bash или любую другую оболочку? Linux предоставляет гибкие и мощные команды для удаления каталогов и файлов прямо из командной строки терминала. Некоторые люди предпочитают иметь рабочий процесс, который вращается вокруг терминала. У других может не быть выбора в этом вопросе. Они могут работать на серверах без установленного графического интерфейса или в удаленном сеансе в автономной системе, такой как Raspberry Pi. Эти команды идеально подходят для этой группы людей.

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

Источник

Удаление Папки и Файлов в Linux

Работать с командной строкой должен уметь каждый будущий системный администратор и опытный пользователь Linux. Сегодня мы рассмотрим ещё одну базовую функцию — удаление папки и файлов в Linux с помощью командной строки.

Прокачайте ваш Linux сервер, воспользовавшись скидками на VPS-хостинг в Hostinger! Большой выбор планов, как для учебных, так и для крупных коммерческих проектов.

Команда rmdir

Команда, используемая, чтобы удалить пустую папку в Linux через командную строку — это rmdir.

Основной синтаксис этой команды довольно простой. Вот пример:

  • rmdir — это команда
  • [опция] — опциональный модификатор, который изменяет поведение команды
  • НазваниеПапки — каталог, который вы хотите удалить

Если опция не указана, rmdir просто удаляет каталог, имя которого указано в качестве места назначения. Перед использованием этой команды вам нужно будет войти на сервер VPS через SSH. Вот статья, которая поможет вам это сделать.

Удаление Папки в Linux с Помощью Команды rmdir

Перед использованием команды rmdir мы рекомендуем вам проверить список файлов в каталоге с помощью команды ls. В нашем случае у нас есть каталог с названием Dir1.

Читайте также:  Посмотреть загруженность оперативной памяти linux

Эта команда удалит пустой каталог с именем Dir1. Довольно просто, правда?

Вы также можете удалить несколько каталогов, разделив их имена пробелами. Например:

После выполнения этой команды каталоги с именами Dir1, Dir2 и Dir3 будут удалены.

Допустим, у нас есть папка Dir3. Dir3 содержит подкаталоги и файлы. Теперь, если мы используем команду:

То получим ошибку:

Как вы уже могли догадаться, rmdir работает только с пустыми каталогами.

Rmdir — умная утилита, которая позволяет удалять только пустые папки. Таким образом, она защищает данные от случайной потери. Помните, что удалённые данные в любом дистрибутиве Linux практически невозможно восстановить.

Опция -p позволяет удалить папку через командную строку, а также её родительские каталоги.

Эта команда удалит Dir3 и его родительские каталоги Dir2 и Dir1.

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

Команда rm

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

Синтаксис этой команды похож на rmdir:

Как Удалить Файл в Linux с Помощью Команды rm

Давайте используем команду rm, чтобы удалить файл с именем article.txt:

Допустим, у нас есть каталог с именем Dir1, содержащий подкаталоги и файлы, чтобы удалить его, нам понадобится модификатор -r. Команда будет выглядеть так:

Опция -r рекурсивно удаляет каталоги и их содержимое.

Ещё одна полезная опция -i. Она попросит вас подтвердить удаление каждого отдельного файла, благодаря чему вы сможете избежать любых неприятных ошибок.

Вы также можете удалить пустые каталоги, используя опцию -d. Следующая команда удалит пустую папку с именем Dir1:

Вы можете использовать подстановочный знак (*) и обычные расширения для сопоставления нескольких файлов. Например, следующая команда удалит все файлы PDF в текущем каталоге.

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

Опция -f позволяет принудительно удалить всё, что находится в каталоге. Команда будет выглядеть так:

Приведённая выше команда рекурсивно и принудительно удалит всё, что находится в каталоге Dir1, не запрашивая подтверждения в терминале.

Вы также можете удалить несколько папок за раз. Следующая команда удалит три каталога Dir1, Dir2 и Dir3.

Поздравляем, вы успешно освоили основные функции команд rm и rmdir, позволяющие удалить файл или папку в Linux!

Итоги

Случайное удаление папки или даже одного файла в Linux может привести к серьёзным проблемам. Вот почему важно освоить две основные команды для удаления файлов и каталогов — rm и rmdir. В этой статье мы рассмотрели эти две команды и различные опции, которые позволяют их модифицировать.

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

Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.

Источник

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