- Как удалить файлы и каталоги в терминале Linux?
- Как удалить файлы с помощью rm
- Как удалить каталоги с помощью rm
- Как удалить каталоги с помощью rmdir
- Как удалить каталог в Linux через терминал
- Удаление
- Удаление Папки и Файлов в Linux
- Команда rmdir
- Удаление Папки в Linux с Помощью Команды rmdir
- Команда rm
- Как Удалить Файл в Linux с Помощью Команды rm
- Итоги
Как удалить файлы и каталоги в терминале 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, необходимо воспользоваться специальной командой. Стоит отметить тот факт, что в Линукс существует несколько альтернативных комбинаций для проведения подобной операции. Именно их мы и рассмотрим в данной статье.
Удаление
Первое, что приходит на ум в таком деле – это удаление каталога посредством утилиты rmdir. Данная программа прекрасно справляется со своей задачей, при условии, что пользователю необходимо очистит Линукс от пустых папок.
Однако, команда «rmdir» имеет существенный недостаток, она удаляет только пустые каталоги.Чтобы удалить все файлы и подкаталоги, необходимо использовать команду rm с опцией «-R».
Изначально команда rm разработана для удаления файлов в ОС Линукс, однако, с применением правильных опций, эта команда способна выполнить и другие поставленные задачи. Убедитесь в этом сами:
ВАЖНО! Опция -R отвечает за рекурсивное удаление папок, в которых содержатся файлы.
Чтобы вывести данные об объектах, которые будут уничтожены, необходимо ввести следующую комбинацию в строке терминала:
С опцией -R мы уже разобрались ранее. При добавлении -f пользователь застрахует систему от удаления файлов без запроса. При добавлении -v пользователь получает информацию об удаляемых файлах – их наименования.
Приведенные примеры особенно актуальны при случае, если пользователь Линукс удаляет файлы из домашнего каталога. Если нужно очистить другую папку, необходимо указать в окне терминала её полный путь или при помощи «cd,» зайти в нужную директорию. На практике это должно выглядеть следующим образом:
# rm -Rfv /var/log/test
Более подробно о «rm» написано в другой статье здесь
А теперь поговорим об удалении каталога, в наименовании которого есть конкретные слова. Как это сделать на практике:
$ find . -type d -name «papka» -exec rm -rf <> \;
В данной комбинации «-type d» означает, что пользователь хочет найти только каталоги, а «-name» — это параметр, который задает нужное наименование для поиска в системе.
Еще раз вернемся к домашнему каталогу. Как убрать из него пустые папки:
/ -empty -type d -delete
Чтобы понимать, сколько пустых папок будет удалено из системы, можно посчитать их количество посредством специальной комбинации. Она представлена ниже:
/ -empty -type d | wc -l
При необходимости удалить каталог из консоли Linux без шанса на дальнейшее восстановление файлов, рекомендуется использовать для этих целей программу wipe. Данная утилита не входит в пакет стандартных установок, но её легко заиметь на своем ПК:
# apt install wipe
Чтобы удалить нужную папку посредством утилиты, нужно ввести в терминале:
В данном случае функция -f обеспечит автоматическое удаление всех под папок без запроса юзера системы.
В данной статье представлено несколько простых и быстрых способов удаления каталога из операционной системы Linux. Всего несколько кликов – и вопрос закрыт! Выберите для себя оптимальный метод удаления папки, и принимайтесь за дело.
Источник
Удаление Папки и Файлов в Linux
Работать с командной строкой должен уметь каждый будущий системный администратор и опытный пользователь Linux. Сегодня мы рассмотрим ещё одну базовую функцию — удаление папки и файлов в Linux с помощью командной строки.
Прокачайте ваш Linux сервер, воспользовавшись скидками на VPS-хостинг в Hostinger! Большой выбор планов, как для учебных, так и для крупных коммерческих проектов.
Команда rmdir
Команда, используемая, чтобы удалить пустую папку в Linux через командную строку — это rmdir.
Основной синтаксис этой команды довольно простой. Вот пример:
- rmdir — это команда
- [опция] — опциональный модификатор, который изменяет поведение команды
- НазваниеПапки — каталог, который вы хотите удалить
Если опция не указана, rmdir просто удаляет каталог, имя которого указано в качестве места назначения. Перед использованием этой команды вам нужно будет войти на сервер VPS через SSH. Вот статья, которая поможет вам это сделать.
Удаление Папки в Linux с Помощью Команды rmdir
Перед использованием команды rmdir мы рекомендуем вам проверить список файлов в каталоге с помощью команды ls. В нашем случае у нас есть каталог с названием Dir1.
Эта команда удалит пустой каталог с именем 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. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.
Источник