- Как удалить файлы и каталоги в терминале Linux?
- Как удалить файлы с помощью rm
- Как удалить каталоги с помощью rm
- Как удалить каталоги с помощью rmdir
- Как удалить папку в Linux через терминал (консоль)
- Как удалить пустую папку в Linux через терминал
- Как удалить папку с содержимым (с файлами) в Linux
- Как удалить все файлы в папке Linux
- Поиск и удаление с помощью команды find
- Удаление каталогов в Linux
- Удаляем каталоги в Linux
- Способ 1: Стандартные команды «Терминала»
- Способ 2: Утилита wipe
Как удалить файлы и каталоги в терминале Linux?
Команды rm и rmdir удаляют файлы и каталоги в Linux, macOS и других Unix-подобных операционных системах. Они похожи на команды del и deltree в Windows и DOS. Эти команды очень мощные и имеют довольно много опций.
Важно отметить, что файлы и каталоги, удаленные с помощью rm и rmdir , не перемещаются в корзину. Они сразу же удаляются с вашего компьютера. Если вы случайно удалили файлы с помощью этих команд, вы сможете восстановить их только из резервной копии.
Как удалить файлы с помощью rm
Самый простой случай — это удаление одного файла в текущем каталоге. Введите команду rm, пробел, а затем имя файла, который вы хотите удалить.
Если файл не находится в текущем рабочем каталоге, укажите путь к местоположению файла.
Вы можете передать более одного имени файла в 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 остается точно таким, каким он был, а файлы в нем нетронутыми.
Когда 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.
В данной инструкции мы рассмотрим тему удаления папок (каталогов). Здесь вы узнаете, как удалить пустую папку или каталог с файлами через терминал или консоль. Также мы немного затронем тему создания и поиска папок.
Как удалить пустую папку в Linux через терминал
Если вам нужно удалить пустую папку в Linux через терминал, то для этого проще всего использовать команду rmdir. Данная команда используется для удаления пустых папок из файловой системы Linux. Каталоги с файлами или другими каталогами данная команда не удаляет.
Синтаксис команды rmdir выглядит следующим образом:
Разберем доступные параметры подробней:
Для того чтобы просто удалить пустую папку нужно ввести « rmdir foldername ». Где « foldername » это название удаляемого объекта. При желании можно удалить сразу несколько папок, для этого достаточно перечислить их через пробел.
Если необходимо удалить каталог, в котором есть другие каталоги (без файлов), то можно воспользоваться параметром « -p ». Для этого нужно ввести « rmdir -p » и указать полный путь. Например, если в каталоге folder1 есть другой каталог folder2, то мы можем удалить их сразу одной командой « rmdir -p folder1/folder2 ».
При использовании параметра « -v » в консоль будет выведена подробная информация о процессе удаления каталогов.
А при использовании параметра « ignore-fail-on-non-empty » команда будет игнорировать ошибки, которые будут возникать при попытке удаления непустых каталогов.
Нужно отметить, что также существует команда « mkdir », которая предназначена для создания папок и обладает точно таким же синтаксисом.
С ее помощью вы можете создать папки по одной или целым деревом (при использовании параметра « -p »).
Как удалить папку с содержимым (с файлами) в Linux
Если нужно удалить папку с каким-то содержимым, например, с файлами, то тут уже нужно использовать команду « rm ». Данная Linux команда предназначена для удаления файлов, но с ее помощью можно удалять и каталоги, если использовать параметр «-r», который включает рекурсивное удаление.
Синтаксис команды rm выглядит следующим образом:
Разберем основные параметры команды rm:
Для удаления папок с файлами нам нужно использовать параметр « -r ». Введите « rm -r » и укажите название папки, которую нужно удалить. Например, если у нас есть каталог folder1 с какими-то файлами, то мы можем ее удалить, введя команду « rm -r folder1 »
Если необходимо, чтобы удаление папок сопровождалось запросом, то вместе с параметром « -r » можно использовать параметр « -i ». В этом случае каждая операция, которую будет выполнять команда, будет требовать разрешения пользователя. При этом команда для удаления папки folder1 будет выглядеть как «rm -ri folder1 ».
Обратите внимание, во всех примерах предполагается, что удаляемый объект находится в текущей папке. Но, при необходимости вы можете удалять каталоги используя полный путь.
Например, вы можете указать « rm -rv /home/aleks/folder1 » для того, чтобы удалить папку folder1 с выводом подробной информации.
Как удалить все файлы в папке Linux
В некоторых случаях может возникнуть необходимость удалить все файлы в папке при этом не удаляя саму папку. Для решения такой задачи можно использовать вот такую команду « rm -rf /path/to/directory/* ». Данная команда удалит все файлы и папки (рекурсивно удалит все содержимое) по указанному пути.
Если же нужно удалить все файлы в папке, но оставить вложенные папки, то это можно сделать командой « rm -f /path/to/directory/* ».
Альтернативный вариант — это удаление самой папки со всем содержимым (включая скрытые файлы и каталоги) и повторное ее создание.
Для этого подойдет команда « rm -rf foldername && mkdir foldername ».
Поиск и удаление с помощью команды find
Если нужно не просто удалить какую-то определенную папку с файлами, а сначала найти ее, то тут поможет Linux-команда find. Данная команда является мощным инструментом для поиска файлов и выполнения с ними определенных операций. Среди прочего ее можно использовать для поиска и удаления файлов.
Например, чтобы найти и удалить пустые папки в домашнем каталоге можно выполнить команду:
Данная команда использует следующие параметры:
Другой пример – поиск и удаление папок с определенным названием. Так, чтобы удалить папки, содержащие в названии слово « test » можно выполнить следующую команду:
Данная команда содержит следующие параметры:
Указанные выше примеры использования Linux-команды find – лишь часть ее возможностей. Рассмотреть все варианты ее использования в рамках этой статьи будет невозможно.
Источник
Удаление каталогов в Linux
В операционных системах на базе ядра Linux обычно хранится большое количество пустых и непустых директорий. Некоторые из них занимают достаточное большое количество места на накопителе, а также часто становятся ненужными. В таком случае правильным вариантом будет их удаление. Способов выполнения очистки существует несколько, каждый из них применим в определенной ситуации. Давайте рассмотрим все доступные методы более детально, а вы выберете наиболее подходящий, исходя из своих потребностей.
Удаляем каталоги в Linux
В рамках данной статьи мы поговорим о консольных утилитах и дополнительных инструментах, запуск которых осуществляется через ввод команд. Однако не стоит забывать, что часто в дистрибутивах реализованы графические оболочки. Соответственно, для удаления директории вам всего лишь нужно перейти к ней через файловый менеджер, щелкнуть правой кнопкой мыши на иконке и выбрать «Удалить». После этого не забудьте очистить корзину. Однако не для всех юзеров такой вариант будет применим, поэтому советуем ознакомиться со следующими руководствами.
Перед началом рассмотрения способов важно отметить, что при вводе команды чаще всего вы будете самостоятельно указывать название папки, которую требуется удалить. Когда вы находитесь не в ее расположении, следует указать полный путь. Если есть такая возможность, рекомендуем узнать родительский каталог объекта и перейти в него через консоль. Выполняется это действие буквально за несколько минут:
- Откройте файловый менеджер и перейдите в место хранения папки.
Щелкните по ней ПКМ и выберите «Свойства».
В разделе «Основные» отыщите полный путь и запомните его.
Используйте cd, чтобы перейти к работе в расположении. Тогда строка ввода обретает вид cd /home/user/folder и актируется после нажатия на клавишу Enter. User в данном случае — имя пользователя, а folder — название родительской папки.
Если же вы не имеете возможности определить расположение, при удалении вам придется вводить полный путь самостоятельно, поэтому его придется знать.
Способ 1: Стандартные команды «Терминала»
В командной оболочке любого дистрибутива Linux присутствует набор основных утилит и инструментов, позволяющих выполнять самые разнообразные действия с системными настройками и файлами, в том числе осуществлять удаление директорий. Таких утилит существует несколько и каждая будет максимально полезной в определенной ситуации.
Команда rmdir
В первую очередь хотелось бы затронуть rmdir. Она предназначена для очистки системы только от пустых директорий. Удаляет их безвозвратно, а преимущество этого инструмента заключается в простоте его синтаксиса и отсутствии возникновения каких-либо ошибок. В консоли достаточно прописать rmdir folder , где folder — имя папки в текущем расположении. Активация инструмента производится нажатием на клавишу Enter.
Ничто не мешает указать полный путь к каталогу, если вы не можете перейти в необходимое расположение или в этом нет надобности. Тогда строка обретает, например, следующий вид: rmdir /home/user/folder/folder1 , где user — имя пользователя, folder — родительский каталог, а folder1 — папка для удаления. Обратите внимание, что перед home обязательно ставится слеш, а в конце пути он должен отсутствовать.
Команда rm
Предыдущий инструмент является одной из составляющих утилиты rm. Изначально она предназначена для удаления файлов, но если придать ей соответствующий аргумент, она сотрет и папку. Такой вариант уже подходит для непустых каталогов, в консоль при этом нужно ввести rm -R folder (или полный путь к каталогу). Обратите внимание на аргумент -R — он запускает рекурсивное удаление, то есть касается оно всего содержимого папки и ее самой. Учитывать регистр при вводе обязательно, потому что -r — уже совсем другая опция.
Если вы хотите вывести на экран список всех удаленных файлов и папок при использовании rm, тогда потребуется немного видоизменить строку. Введите в «Терминале» rm -Rfv folder , а затем активируйте команду.
После завершения удаления отобразится информация обо всех каталогах и отдельных объектах, ранее располагавшихся по указанному расположению.
Команда find
На нашем сайте уже есть материал с примерами использования find в операционных системах, разработанных на ядре Линукс. Конечно, там представлены только основные и самые полезные сведения. Ознакомиться с ним можно, перейдя по следующей ссылке, а сейчас мы предлагаем узнать, как этот инструмент работает при надобности удаления директорий.
- Как известно, find служит для поиска объектов внутри системы. Благодаря применению дополнительных опций вы можете найти каталоги с определенным именем и сразу же удалить их. Для этого в консоли введите find . -type d -name «folder» -exec rm -rf <> \;, где folder — наименование каталога. Обязательно при этом писать двойные кавычки.
В отдельной строке иногда отображается информация о том, что такого файла или каталога нет, но это не значит, что он не был найден. Просто find сработала повторно уже после удаления каталога из системы.
/ -empty -type d -delete позволяет удалить все пустые папки, находящиеся в системе. Некоторые из них доступны только суперпользователю, поэтому перед find следует добавить sudo .
На экране появятся данные обо всех найденных объектах и успешности выполнения операции.
Можно также указать только определенный каталог, в котором инструмент будет осуществлять поиск и очистку. Тогда строка будет выглядеть, например, так: find /home/user/Folder/ -empty -type d -delete .
На этом взаимодействие со стандартными консольными утилитами в Linux завершено. Как видите, их существует большое количество и каждая применима в определенных ситуациях. Если у вас есть желание ознакомиться с другими популярными командами, читайте отдельный наш материал по ссылке далее.
Способ 2: Утилита wipe
Если предыдущие инструменты встроены в командную оболочку, то утилиту wipe нужно будет самостоятельно установить их официального репозитория. Ее преимущество в том, что она позволяет безвозвратно удалить каталог без возможности его восстановления через специальный софт.
- Откройте «Терминал» и пропишите там sudo apt install wipe .
Введите пароль для подтверждения учетной записи.
Ожидайте завершения добавления новых пакетов в системные библиотеки.
Осталось только перейти к нужному расположению или прописать команду с полным путем к папке. Выглядит это так: wipe -rfi /home/user/folder или просто wipe -rfi folder при предварительном выполнении cd + путь .
Если с работой в инструменте wipe пришлось столкнуться впервые, пропишите в консоли wipe -help , чтобы получить информацию по использованию этой утилиты от разработчиков. Там отобразится описание каждого аргумента и опции.
Теперь вы знакомы с терминальными командами, которые позволяют удалять пустые каталоги или непустые в ОС, разработанных на Linux. Как можно заметить, каждый представленный инструмент работает по-разному, поэтому и будет оптимальным в различных ситуациях. Перед запуском инструментов настоятельно рекомендуем проверять правильность указанного пути и названий папок, чтобы не возникло ошибок или случайных удалений.
Помимо этой статьи, на сайте еще 12315 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник