- Как удалить файлы и каталоги в терминале Linux?
- Как удалить файлы с помощью rm
- Как удалить каталоги с помощью rm
- Как удалить каталоги с помощью rmdir
- Как удалить каталог в Linux
- Подготовка
- Удаление каталогов с помощью rmdir
- Удаление каталогов с помощью rm
- Удаление каталогов с помощью find
- Удаление всех пустых каталогов
- / bin / rm: слишком длинный список аргументов
- Выводы
- Как удалить файлы и папки с помощью Linux
- Как использовать Nautilus для удаления файлов
- Как использовать Dolphin для удаления файлов
- Как использовать Thunar для удаления файлов
- Как использовать PCManFM для удаления файлов
- Как использовать Caja для удаления файлов
- Как удалить файл с помощью командной строки Linux
- Как получить сообщение «Вы уверены» при удалении файлов в Linux
- Рекурсивное удаление каталогов и подкаталогов с использованием Linux
- Как удалить каталог, но только если он пуст
- Как удалить файлы без появления ошибки, если файл не существует
- Резюме
Как удалить файлы и каталоги в терминале 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. Если вы используете файловый менеджер рабочего стола, такой как Gnome’s Files или KDE’s Dolphin, вы можете удалять файлы и каталоги с помощью графического пользовательского интерфейса менеджера. Но если вы работаете на автономном сервере или хотите удалить сразу несколько каталогов, лучшим вариантом является удаление каталогов (папок) из командной строки.
В этой статье мы объясним, как удалять каталоги в Linux с помощью команд rmdir , rm и find .
Подготовка
При удалении каталога с помощью файлового менеджера рабочего стола каталог фактически перемещается в корзину и может быть легко восстановлен.
Будьте особенно осторожны при удалении файлов или каталогов из командной строки, поскольку после удаления каталога с помощью команд, описанных в этой статье, его невозможно полностью восстановить.
В большинстве файловых систем Linux для удаления каталога требуется разрешение на запись в каталог и его содержимое. В противном случае вы получите ошибку «Операция запрещена».
Имена каталогов с пробелами должны быть экранированы обратной косой чертой ( / ).
Удаление каталогов с помощью rmdir
rmdir — это утилита командной строки для удаления пустых каталогов. Это полезно, когда вы хотите удалить каталог только в том случае, если он пуст, без необходимости проверять, пуст каталог или нет.
Чтобы удалить каталог с помощью rmdir , введите команду, а затем имя каталога, который вы хотите удалить. Например, чтобы удалить каталог с именем dir1 , введите:
Если каталог не пустой, вы получите следующую ошибку:
В этом случае вам нужно будет использовать команду rm или вручную удалить содержимое каталога, прежде чем вы сможете его удалить.
Удаление каталогов с помощью rm
rm — это утилита командной строки для удаления файлов и каталогов. В отличие от rmdir команда rm может удалять как пустые, так и непустые каталоги.
По умолчанию при использовании без каких-либо параметров rm не удаляет каталоги. Чтобы удалить пустой каталог, используйте параметр -d ( —dir ), а для удаления непустого каталога и всего его содержимого используйте параметр -r ( —recursive или -R ).
Например, чтобы удалить каталог с именем dir1 вместе со всем его содержимым, введите:
Если каталог или файл в каталоге защищен от записи, вам будет предложено подтвердить удаление. Чтобы удалить каталог без запроса, используйте параметр -f :
Чтобы удалить сразу несколько каталогов, вызовите команду rm , после которой укажите имена каталогов, разделенные пробелом. Приведенная ниже команда удалит все перечисленные каталоги и их содержимое:
Параметр -i указывает rm запрашивать подтверждение удаления каждого подкаталога и файла. Если в каталоге много файлов, это может немного раздражать, поэтому вы можете рассмотреть возможность использования опции -I которая предложит вам только один раз, прежде чем продолжить удаление.
Чтобы удалить каталог, введите y и нажмите Enter .
Вы также можете использовать обычные расширения для сопоставления и удаления нескольких каталогов. Например, чтобы удалить все каталоги первого уровня в текущем каталоге, который заканчивается на _bak , вы должны использовать следующую команду:
Использование регулярных расширений при удалении каталогов может быть рискованным. Рекомендуется сначала перечислить каталоги с помощью команды ls чтобы вы могли видеть, какие каталоги будут удалены, прежде чем запускать команду rm .
Удаление каталогов с помощью find
find — это утилита командной строки, которая позволяет вам искать файлы и каталоги на основе заданного выражения и выполнять действие с каждым совпадающим файлом или каталогом.
Наиболее распространенный сценарий — использовать команду find для удаления каталогов на основе шаблона. Например, чтобы удалить все каталоги, которые заканчиваются на _cache в текущем рабочем каталоге, вы должны запустить:
Давайте проанализируем команду выше:
- /dir — рекурсивный поиск в текущем рабочем каталоге ( . ).
- -type d — ограничивает поиск каталогами.
- -name ‘*_cache’ — искать только каталоги, заканчивающиеся на _cache
- -exec — выполняет внешнюю команду с необязательными аргументами, в данном случае это rm -r .
- <> + — добавляет найденные файлы в конец команды rm .
Удаление всех пустых каталогов
Чтобы удалить все пустые каталоги в дереве каталогов, выполните:
Вот объяснение используемых опций:
- /dir — рекурсивный поиск в каталоге /dir .
- -type d — ограничивает поиск каталогами.
- -empty — ограничивает поиск только пустыми каталогами.
- -delete — удаляет все найденные пустые каталоги в поддереве. -delete может удалять только пустые каталоги.
Используйте параметр -delete с особой осторожностью. Командная строка поиска оценивается как выражение, и если вы сначала добавите параметр -delete , команда удалит все, что находится ниже указанных вами начальных точек.
Всегда сначала проверяйте команду без опции -delete и используйте -delete в качестве последней опции.
/ bin / rm: слишком длинный список аргументов
Это сообщение об ошибке появляется, когда вы используете команду rm для удаления каталога, содержащего огромное количество файлов. Это происходит из-за того, что количество файлов превышает системное ограничение на размер аргумента командной строки.
Есть несколько разных решений этой проблемы. Например, вы можете cd в каталог и вручную или с помощью цикла для удаления Подкаталогов один за другим.
Самое простое решение — сначала удалить все файлы в каталоге с помощью команды find а затем удалить каталог:
Выводы
С помощью rm и find вы можете быстро и эффективно удалять каталоги по различным критериям.
Удаление каталогов — простой и легкий процесс, но вы должны быть осторожны, чтобы не удалить важные данные.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Источник
Как удалить файлы и папки с помощью Linux
Самый простой способ удалить файлы – использовать файловый менеджер, который входит в состав вашей версии Linux. Диспетчер файлов предоставляет графическое представление файлов и папок, которые хранятся на вашем компьютере. Пользователи Windows будут знакомы с приложением под названием Windows Explorer, которое само по себе является файловым менеджером.
Для Linux существует множество различных файловых менеджеров, но вот наиболее часто устанавливаемые:
- Наутилус (он же Файлы)
- дельфин
- PCManFM
- Thunar
- Каха
Nautilus является частью среды рабочего стола GNOME и является файловым менеджером по умолчанию для Ubuntu, Linux Mint, Fedora и openSUSE.
Dolphin является частью среды рабочего стола KDE и является файловым менеджером по умолчанию для таких дистрибутивов, как Kubuntu и KDE-версии Mint и Debian.
Thunar является частью среды рабочего стола XFCE и является файловым менеджером по умолчанию для Xubuntu.
PCManFM является частью среды рабочего стола LXDE и является файловым менеджером по умолчанию для Lubuntu.
Caja является файловым менеджером по умолчанию для среды рабочего стола MATE и входит в состав Linux Mint Mate.
Как использовать Nautilus для удаления файлов
Наутилус можно открыть в Ubuntu, щелкнув значок картотеки на панели запуска. Вы сможете найти Nautilus на Mint, нажав на файловый менеджер в панели быстрого запуска или через меню. Любой дистрибутив, использующий среду рабочего стола GNOME, будет иметь файловый менеджер в окне действий.
Когда у вас открыт Nautilus, вы можете перемещаться по файлам и папкам, дважды щелкнув по ним. Чтобы удалить один файл, щелкните правой кнопкой мыши его значок и выберите «Переместить в корзину».
Вы можете выбрать несколько файлов, удерживая нажатой клавишу CTRL, нажимая на файл, а затем нажмите правую кнопку мыши, чтобы вызвать меню. Нажмите «Переместить в корзину», чтобы переместить предметы в корзину.
Если вы предпочитаете использовать клавиатуру, вы можете нажать клавишу «Удалить» на клавиатуре, чтобы отправить элементы в мусорное ведро.
Чтобы окончательно удалить файлы, нажмите значок «Корзина» на левой панели. Здесь показаны все элементы, которые были удалены, но все еще могут быть восстановлены.
Чтобы восстановить файл, нажмите на элемент и нажмите кнопку «Восстановить» в правом верхнем углу.
Чтобы очистить корзину, нажмите кнопку «Очистить» в правом верхнем углу.
Как использовать Dolphin для удаления файлов
Менеджер файлов Dolphin – это файловый менеджер по умолчанию в среде KDE. Вы можете запустить его, нажав на его значок в меню.
Интерфейс очень похож на интерфейс Nautilus, и функциональность удаления почти такая же.
Чтобы удалить один файл, щелкните правой кнопкой мыши файл и выберите «Переместить в корзину». Вы также можете нажать клавишу удаления, но при этом появится сообщение с вопросом, уверены ли вы, что хотите переместить элемент в корзину. Вы можете остановить повторное появление сообщения, установив флажок.
Чтобы удалить несколько файлов, выберите все файлы, которые вы хотите удалить, удерживая клавишу CTRL и щелкая левой кнопкой мыши по файлам. Чтобы переместить их в корзину, можно нажать клавишу удаления или щелкнуть правой кнопкой мыши и выбрать «Переместить в корзину».
Вы можете восстановить элементы из корзины, нажав на значок корзины на левой панели. Найдите элемент или элементы, которые вы хотите восстановить, щелкните правой кнопкой мыши и выберите «восстановить».
Чтобы очистить корзину, щелкните правой кнопкой мыши на опции корзины на левой панели и выберите «Очистить корзину».
Вы можете навсегда удалить файлы, не отправляя их в мусорное ведро в первую очередь, удерживая клавишу Shift и нажимая кнопку удаления.
Как использовать Thunar для удаления файлов
Большинство файловых менеджеров придерживаются одной и той же темы, когда речь идет о выборе, копировании, перемещении и удалении файлов и папок.
Тунар ничем не отличается. Вы можете открыть Thunar в среде рабочего стола XFCE, щелкнув меню и выполнив поиск «Thunar».
Чтобы удалить файл с помощью Thunar, выберите файл мышью и щелкните правой кнопкой мыши. Основное различие между Thunar и двумя ранее упомянутыми файловыми менеджерами заключается в том, что в контекстном меню доступны как «перейти в корзину», так и «удалить».
Поэтому для отправки файла в корзину можно выбрать опцию «переместить в корзину» или удалить навсегда, используя опцию «удалить».
Чтобы восстановить файл, нажмите значок «Корзина» на левой панели, а затем найдите файл, который вы хотите восстановить. Щелкните правой кнопкой мыши файл и выберите пункт «Восстановить» в меню.
Чтобы очистить корзину, щелкните правой кнопкой мыши значок «Корзина» и выберите «Очистить корзину».
Как использовать PCManFM для удаления файлов
Файловый менеджер PCManFM используется по умолчанию для среды рабочего стола LXDE.
Вы можете открыть PCManFM, выбрав файловый менеджер в меню LXDE.
Чтобы удалить файл, перейдите по папкам и выберите файл, который вы хотите удалить, с помощью мыши.
Вы можете нажать клавишу удаления, чтобы удалить файл, и вас спросят, хотите ли вы переместить элемент в корзину. Вы также можете щелкнуть правой кнопкой мыши по файлу и выбрать в меню пункт «Переместить в корзину».
Если вы хотите навсегда удалить файл, удерживайте клавишу Shift и нажмите кнопку удаления. Теперь вас спросят, хотите ли вы удалить файл. Если вы удерживаете клавишу Shift и нажимаете правую кнопку мыши, опция меню теперь будет отображаться как «удалить» вместо «перейти в корзину».
Чтобы восстановить элементы, нажмите на корзину и выберите файл или файлы, которые вы хотите восстановить. Щелкните правой кнопкой мыши и выберите «восстановить».
Чтобы очистить корзину, щелкните правой кнопкой мыши по корзине и выберите «Очистить корзину» из меню.
Как использовать Caja для удаления файлов
Caja является файловым менеджером по умолчанию для Linux Mint MATE и среды рабочего стола MATE в целом.
Файловый менеджер Caja будет доступен из меню.
Чтобы удалить файл, перейдите по папкам и найдите файл или файлы, которые вы хотите удалить. Выберите файл, нажав на него и щелкните правой кнопкой мыши. В меню будет опция «Переместить в корзину». Вы также можете нажать клавишу удаления, чтобы переместить файл в корзину.
Вы можете окончательно удалить файл, удерживая клавишу Shift, а затем нажав клавишу удаления. Для удаления файлов без правого выбора меню нет.
Чтобы восстановить файл, нажмите на корзину в левой панели. Найдите файл, который нужно восстановить, и выделите его мышью. Теперь нажмите на кнопку восстановления.
Чтобы очистить корзину, нажмите на корзину, а затем кнопку «Очистить корзину».
Как удалить файл с помощью командной строки Linux
Основной синтаксис для удаления файла с помощью терминала Linux выглядит следующим образом:
Например, представьте, что у вас есть файл с именем file1 в папке/home/gary/documents, вы должны ввести следующую команду:
Там нет предупреждения, спрашивающего вас, уверены ли вы, поэтому вы должны быть очень уверены, что вы ввели путь к правильному файлу, или файл будет удален.
Вы можете удалить несколько файлов, просто указав их как часть команды rm следующим образом:
Вы также можете использовать подстановочные знаки, чтобы определить, какие файлы удалять. Например, чтобы удалить все файлы с расширением .mp3, вы должны использовать следующую команду:
На этом этапе стоит указать, что вам необходимо иметь необходимые разрешения для удаления файлов, иначе вы получите ошибку.
Вы можете повысить разрешения с помощью команды sudo или переключиться на пользователя с разрешениями на удаление файла с помощью команды su.
Как получить сообщение «Вы уверены» при удалении файлов в Linux
Как упоминалось в предыдущем разделе, команда rm не запрашивает подтверждения перед удалением файла. Он просто делает это без разбора.
Вы можете переключиться на команду rm, чтобы она спросила вас, уверены ли вы перед удалением каждого файла.
Это, конечно, хорошо, если вы удаляете один файл, но если вы удаляете сотни файлов, это станет утомительным.
Например, если вы хотите удалить все файлы mp3 в папке, но хотите подтвердить каждое удаление, вы должны использовать следующую команду:
Вывод вышеуказанной команды будет выглядеть примерно так:
Чтобы удалить файл, нажмите Y или Y и нажмите Return. Если вы не хотите удалять файл, нажмите n или N.
Если вы хотите получить запрос, уверены ли вы, что хотите удалить файлы, но только когда нужно удалить более 3 файлов или при рекурсивном удалении, вы можете использовать следующий синтаксис:
Это менее навязчиво, чем команда rm -i, но, конечно, если команда собиралась удалить менее 3 файлов, вы потеряете эти 3 файла.
Вывод вышеуказанной команды будет выглядеть примерно так:
Снова ответ должен быть y или Y для удаления.
Альтернатива командам -i и -I:
Приведенный выше синтаксис читается легче и гласит, что вам никогда не сообщат об удалении, что равносильно отсутствию ключа для команды rm, вам сообщат один раз, что то же самое, что запустить rm с ключом -I или вам всегда будет сказано, что аналогично выполнению команды rm с ключом -i.
Рекурсивное удаление каталогов и подкаталогов с использованием Linux
Представьте, что у вас есть следующая структура папок:
Если вы хотите удалить папку учетных записей и все подпапки и файлы, вы должны использовать следующий переключатель:
Вы также можете использовать любую из следующих двух команд:
Как удалить каталог, но только если он пуст
Представьте, что у вас есть папка с именем account, и вы хотите удалить ее, но только если она пуста. Вы можете сделать это с помощью следующей команды:
Если папка пуста, она будет удалена, но если нет, вы получите следующее сообщение:
Как удалить файлы без появления ошибки, если файл не существует
Если вы запускаете скрипт, вы можете не захотеть, чтобы произошла ошибка, если файл или файлы, которые вы пытаетесь удалить, не существуют.
В этом случае вы можете использовать следующую команду:
Например, вы можете использовать эту команду для удаления файла с именем file1.
Если файл существует, он будет удален, а если его нет, вы не получите никакого сообщения о том, что он не существует. Обычно без ключа -f вы получите следующую ошибку:
Резюме
Существуют и другие команды, которые вы можете использовать для удаления файлов, например команда shred, которая предотвратит любое восстановление файла.
Если у вас есть символическая ссылка, вы можете удалить ссылку, используя команду unlink.
Источник