- Чтобы удалить один файл, используйте команду rm, за которой следует имя файла:rm filename
Если файл защищен от записи, вам будет предложено подтвердить ее, как показано ниже. Чтобы удалить файл введите y и нажмите Enter. В противном случае, если файл не защищен от записи, он будет удален без запроса.
rm: remove write-protected regular empty file ‘filename’?
- Чтобы удалить сразу несколько файлов, используйте команду rm, за которой следуют имена файлов, разделенные пробелом.rm filename1 filename2 filename3
Вы также можете использовать подстановочный знак ( *) и регулярные выражения для соответствия нескольким файлам. Например, чтобы удалить все файлы с расширением .pdf в текущем каталоге, используйте следующую команду:
rm *.pdf
Когда вы используете rm с wildcards ( *) и регулярными расширениями, рекомендуется перечислить файлы с помощью команды ls, чтобы вы могли видеть, какие файлы будут удалены перед запуском команды rm.
- Используйте опцию -i для подтверждения каждого файла перед удалением:rm -i filename(s)
- Чтобы удалить файлы без запроса, даже если файлы защищены от записи, используйте параметр -f(force):rm -f filename(s)
- Вы также можете комбинировать параметры rm. Например, чтобы удалить все файлы .txt в текущем каталоге без подсказки в подробном режиме, используйте следующую команду:rm -fv *.txt
Оглавление
Удаляем файлы в Linux: практика
В ОС Linux для удаления файлов есть стандартная утилита rm. Как это принято со стандартными утилитами, в названии rm есть определённая идея. В нашем случае речь идёт о сокращении от английского слова Remove — удалять.
Итак, чтобы выполнить удаления одного файла, используем команду rm, указывая за ней имя нашего файла:
rm filename
Если наш файл находится не в текущем рабочем каталоге, нужно указать путь к его местоположению:
rm /home/user/filename
Бывает, что файл защищён от записи. Тогда нам предложат подтвердить команду. Чтобы удалить файл в такой ситуации, просто вводим y и нажимаем Enter.
rm: remove write-protected regular empty file ‘filename’?
Если мы хотим удалить сразу несколько файлов в Linux, то это тоже не проблема: используем команду rm, за которой прописываем имена наших файлов через пробел:
rm filename1 filename2 filename3
Ещё вариант — использование подстановочного знака * и регулярных выражений для соответствия определённым файлам. К примеру, мы легко удалим все файлы в Linux, имеющие расширение .txt следующей командой:
rm *.txt
Для подтверждения каждого файла перед удалением используйте опцию -i:
rm -i filename(s)
Но когда файлов много, а вы твёрдо уверены в правильности своей команды и не хотите каждый раз отвечать на вопрос системы, используйте противоположную опцию -f. Будут удалены все файлы безоговорочно, т. е. без лишних вопросов:
rm -f filename(s)
Способ 1: Терминал
Работа с файлами в «Терминале» кардинально отличается от работы в файловом менеджере. Как минимум, в нем нет визуализации — все данные вы будете вводить и получать в окне, имеющем вид традиционной для Windows командной строки. Однако именно через этот элемент системы удастся отследить все ошибки, возникающие при выполнении той или иной операции.
Подготовительные мероприятия
Используя «Терминал» для создания или удаления файлов в системе, вам необходимо предварительно указать в нем директорию, в которой будут выполняться все последующие операции. В противном случае все созданные файлы будут находиться в корневом каталоге («/»).
Указать директорию в «Терминале» можно двумя способами: при помощи файлового менеджера и при помощи команды cd. Разберем каждый в отдельности.
Файловый менеджер
Итак, допустим, вы хотите создать или, наоборот, удалить файл из папки «Документы», что находиться по пути:
/home/Имя_Пользователя/Документы
Чтобы открыть эту директорию в «Терминале», вам необходимо сначала открыть ее в файловом менеджере, а затем, нажав ПКМ, выбрать в контекстном меню пункт «Открыть в терминале».
По итогу откроется «Терминал», в котором будет указана выбранная директория.
Команда cd
Если вы не хотите пользоваться предыдущим способом или не имеете доступа к файловому менеджеру, вы можете указать директорию, не выходя из «Терминала». Для этого используют команду cd. Все что нужно сделать, это написать данную команду, указав затем путь к директории. Разберем это так же на примере папки «Документы». Впишите команду:
cd /home/Имя_Пользователя/Документы
Вот пример выполняемой операции:
Как видно, необходимо изначально ввести путь к директории (1), а после нажатия клавиши Enter в «Терминале» должна отобразиться выбранная директория (2).
После того как вы узнали, как выбрать директорию, в которой будут проводиться работы с файлами, можно переходить непосредственно к самому процессу создания и удаления файлов.
Создание файлов через «Терминал»
Для начала откройте сам «Терминал», нажав сочетание клавиш CTRL + ALT + T. Теперь можно начинать создание файлов. Для этого есть возможность воспользоваться шестью разными способами, которые будут продемонстрированы ниже.
Утилита touch
Предназначение команды touch в Linux — изменение временной метки (время изменения и время использования). Но если введенного имени файла утилита не найдет, она автоматически создаст новый.
Итак, для создания файла вам необходимо в командной строке прописать:
touch «Имя_Файла» (обязательно в кавычках).
Вот пример такой команды:
Функция перенаправления процесса
Этот способ можно считать самым простым. Чтобы создать файл с его помощью, необходимо всего лишь указать знак перенаправления и ввести имя создаваемого файла:
> «Имя_Файла» (обязательно в кавычках)
Пример:
Команды echo и функция перенаправления процесса
Этот способ практически ничем не отличается от предыдущего, только в этом случае необходимо перед знаком перенаправления вписать команду echo:
echo > «Имя_Файла» (обязательно в кавычках)
Пример:
Утилита cp
Как и в случае с утилитой touch, главным предназначением команды cp не является создание новых файлов. Она необходима для копирования. Однако задав переменную «null», вы создадите новый документ:
cp /dev/null «Имя_Файла» (обязательно без кавычек)
Пример:
Команда cat и функции перенаправления процесса
cat — это команда, служащая для связки и просмотра файлов и их содержимого, но стоит ее использовать вместе с перенаправлением процесса, как она сразу создаст новый файл:
cat /dev/null > «Имя_Файла» (обязательно в кавычках)
Пример:
Текстовый редактор vim
Именно у утилиты vim главное предназначение — это работа с файлами. Однако у нее нет интерфейса — все действия выполняются через «Терминал».
К сожалению, vim предустановлена не на всех дистрибутивах, например, в Ubuntu 16.04.2 LTS ее нет. Но это не беда, ее запросто можно скачать из репозитория и установить на свой компьютер, не покидая «Терминал».
Примечание: если текстовый консольный редактор vim у вас уже установлен, то пропустите этот шаг и переходите сразу к созданию файла с его помощью
Для установки введите команду:
sudo apt install vim
После нажатия Enter потребуется ввести пароль. Вводите его и ждите окончания загрузки и установки. В процессе у вас могут потребовать подтверждение выполнения команды — введите букву «Д» и нажмите Enter.
О завершении установки программы можно судить по появившемуся логину и имени компьютера.
После установки текстового редактора vim можно приступить к созданию файлов в системе. Для этого нужно воспользоваться командой:
vim -c wq «Имя_Файла» (обязательно в кавычках)
Пример:
Выше были перечислены шесть способов, как можно создавать файлы в дистрибутивах Linux. Конечно, это не все возможные, а лишь часть, но с их помощью обязательно получится выполнить поставленную задачу.
Удаление файлов через «Терминал»
Удаление файлов в «Терминале» практически ничем не отличается от их создания. Главное — знать все необходимые команды.
Важно: удаляя файлы из системы через «Терминал», вы их стираете безвозвратно, то есть, в «Корзине» их отыскать потом не получится.
Команда rm
Именно команда rm служит в Linux для удаления файлов. Вам всего-навсего нужно указать директорию, ввести команду и вписать имя файла, который нужно удалить:
rm «Имя_Файла» (обязательно в кавычках)
Пример:
Как можно заметить, после выполнения данной команды в файловом менеджере пропал файл «Новый документ».
Если вы хотите очистить целую директорию от ненужных файлов, то будет довольно долго вписывать их наименования раз за разом. Проще воспользоваться специальной командой, которая вмиг безвозвратно удалит все файлы:
rm *
Пример:
Выполнив эту команду, вы можете видеть как в файловом менеджере удалились все ранее созданные файлы.
Способ 2: Файловый менеджер
Файловый менеджер любой операционной системы (ОС) хорош тем, что он дает возможность наглядно отследить все проводимые манипуляции, в отличие от «Терминала» с его командной строкой. Однако есть и минусы. Один из них: нет возможности детально проследить за процессами, которые выполняются при той или иной операции.
В любом случае пользователям, которые недавно установили дистрибутив Linux себе на компьютер, он отлично подойдет, так как сходство с Windows, как говорится, налицо.
Примечание: в статье в качестве примера будет использован файловый менеджер Nautilus, который является стандартным для большинства дистрибутивов Linux. Однако инструкция для других менеджеров схожа, могут отличаться лишь названия пунктов и расположение элементов интерфейса.
Создаем файл в файловом менеджере
Необходимо делать следующее, чтобы создать файл:
- Открыть файловый менеджер (в данном случае Nautilus), нажав по его иконке на панели задач или проведя поиск по системе.
- Перейти в необходимую директорию.
- Нажать правой кнопкой мыши (ПКМ) по пустому месту.
- В контекстном меню навести курсор на пункт «Создать документ» и выбрать необходимый вам формат (в данном случае формат один — «Пустой документ»).
После этого в директории появится пустой файл, которому остается лишь задать имя.
Как удалить файл в Linux с помощью настольного файлового менеджера
Любой, кто работает с Windows или macOS, найдет среду рабочего стола Linux очень знакомой. Обозреватель файлов в большинстве сред рабочего стола Linux, таких как Ubuntu GNOME или Mint’s Cinnamon, действительно облегчает управление файлами в Linux для среднего пользователя, который может быть не знаком с интерфейсами командной строки..
Как только вы попали в проводник и нашли файл или файлы, которые хотите удалить, у вас есть два пути. Во-первых, вы можете переместить его в корзину, которая представляет собой специальный контейнер в файловой системе, в котором хранятся файлы и каталоги, которые вам больше не нужны.
- Откройте для себя лучшие приложения Linux 2020 года
Вы можете сделать это, щелкнув левой кнопкой мыши по файлу и нажав клавишу «Удалить» на клавиатуре. Это работает для групп файлов, которые вы выбрали их с помощью поля выбора или CTRL / SHIFT + щелчок левой кнопкой мыши. Кроме того, вы можете щелкнуть правой кнопкой мыши файл или один из выбранных вами файлов и выбрать «Переместить в корзину» из контекстного меню..
Как только файлы окажутся в мусорном контейнере, вам нужно будет очистить его вручную, чтобы окончательно удалить файлы внутри него. Вы можете сделать это, щелкнув правой кнопкой мыши «Корзина» на боковой панели навигации большинства файлового обозревателя и выбрав «Очистить корзину».
Двойной щелчок по нему приведет вас внутрь контейнера, где у вас будет возможность восстановить файлы в их исходных местах или навсегда удалить их все.
(Изображение предоставлено: Будущее)
В некоторых средах рабочего стола, таких как Mint’s Cinnamon, также есть возможность постоянного удаления файла прямо из контекстного меню, полностью обходя контейнер Trash..
Это следует делать только в том случае, если вы уверены, что хотите избавиться от файла, поскольку, хотя вы можете восстановить «навсегда» удаленный файл с жесткого диска, это не является гарантией, и процесс может быть очень сложным и отнимает много времени — и, возможно, дорого.
(Изображение предоставлено: Будущее)
Всегда безопаснее переместить что-либо в корзину, чем удалить его навсегда. Оставив его в корзине, вы сохраняете возможность передумать, если обнаружите, что вам нужен файл.
- Это лучшие ноутбуки Linux на рынке прямо сейчас
- Узнайте, какие из лучших дистрибутивов Linux 2020 года
- Проверьте лучшие дистрибутивы Linux для конфиденциальности и безопасности в 2020 году
В большинстве случаев, когда вы приступите к очистке контейнера, вы уже поняли, что вам что-то нужно, и восстановили файл. Если вы не успели очистить корзину, скорее всего, она вам действительно не нужна.
(Изображение предоставлено: Будущее)
Удаляем папки и каталоги в Linux
Если хотите удалить пустой каталог, задействуйте опцию -d.
rm -d dirname
Если хотим удалить непустой каталог и все файлы, которые в нём находятся, поступаем следующим образом:
rm -r dirname
Опять же, в случае наличия защиты от записи, система Linux спросит пользователя, стоит ли выполнять удаление. Если мы хотим удалить файлы и непустые каталоги без лишних вопросов, делаем так:
rm -rf dirname
Когда хотим удалить сразу несколько каталогов, мы применяем команду rm, прописывая за ней имена каталогов через пробел:
rm -r dirname1 dirname2 dirname3
Кстати, здесь мы тоже можем использовать подстановочный знак ( *) и регулярные выражения, обеспечивающие соответствие нескольким каталогам.
Удаление через rm
Для удаления файла, необходимо ввести команду rm и название документа.
rm dokument
Данная команда удалит dokument, с некоторыми особенностями:
- Интерпретатор запросит подтверждение на операцию.
- В примере предполагается, что dokument находится в домашнем каталоге как и пользователь (/root/).
Удалим файл “newfile” из каталога /usr/games.
rm /usr/games/newfile
Удалить все файлы в папке.
rm -f /usr/games/*
Ключ “-f” даст возможность не выводить запрос на подтверждение операции. Однако, команда выше очистит только все файлы из каталога “games” не трогая директории.
Если нужно очистить систему от всех файлов, которые заканчиваются «.doc», следует приписать в самом конце команды символ «*», без пробела.
rm -f /usr/games/*.doc
Утилита Remove (rm) требует особой осторожности в работе. При халатном отношении к делу пользователь может навсегда стереть важные файлы.
Чтобы подобный казус не случился, рекомендуется совершать удаление файлов при помощи стандартной программы rm с добавлением опции -i. Она станет некой перестраховкой в данном вопросе – система начнет запрашивать подтверждение пользователя перед удалением файлов из каталога. Как это выглядит на практике:
rm -i /root/*.doc
Если пользователю не нужен запрос на подтверждение, и он на 100% уверен в правильности своих дальнейших действий, можно вписать в команду опцию с противоположным воздействием на процесс (-f).
rm -i /usr/games/*.doc
Удаление через find
Для реализации задуманного можно воспользоваться еще одной альтернативной программой find. Кроме того, она пригодится даже там, где rm не осилит поставленную задачу. Её синтаксис выглядит следующим образом:
$ find папка критерий действие
К примеру, пользователю нужно очистить текущий каталог от всех файлов с названием «file». Их можно найти и уничтожить следующим способом:
find . -type f -name «file» -delete
Чтобы удалить устаревшие логи (то есть, файлы старше конкретного срока), используйте специальную команду в виде:
$ find /path/to/files* -mtime +5 –exec rm {} ;
Исходя из заданной команды, можно понять, что Линукс удалит из текущего каталога все файлы, «возраст» которых превышает 5 дней. Вот видите, как легко управлять устройством посредством терминала!
Иногда в Linux наличествуют файлы, восстановление которых не имеет ни малейшей актуальности посте чистки ПК. То есть, от них нужно избавиться раз и навсегда. Если использовать ранее упомянутую программу rm, то ничего не получится, поскольку она удаляет лишь ссылку на файл, сохраняя при этом его содержимое в памяти устройства. Он все еще будет поддаваться восстановлению, ровно до того момента, пока Линукс не перезапишет его иной информацией.
Через shred
Чтобы очистить систему от документа без возможности его дальнейшего восстановления, нужно использовать специальную команду под названием «shred». Как только срабатывает команда, файл удаляется, и система неоднократно перезаписывает его место на диске. Как это выглядит на практике:
$ shred /root/file
Что происходит далее? Система перезаписывает место на диске 3 раза (по умолчанию), но это количество поддается коррективам. Используйте опцию -n, если нужно что-то поменять. Добавление опции -z также повлияет на итоговый результат. С ней система запишет место на диске нулями, чтобы никто не мог догадаться о том, что определенный файл был уничтожен пользователем.
Синтаксис и опции команды rm
Команда «rm» имеет множество опций, что позволяет очень тонко управлять процессом удаления файлов. Вы можете изучить все доступные опции если введете в терминал Linux команду «man rm». Здесь же мы будем рассматривать самые простые и часто используемые опции.
Синтаксис команды «rm» выглядит следующим образом:
rm [опции] файлы
Разберем основные опции команды rm:
-f, –force Игнорировать несуществующие файлы и не требовать подтверждения перед удалением. -i Требовать подтверждения перед каждым удалением. -I Запрашивать подтверждение один раз перед удалением более трех файлов или при рекурсивном удалении. -r, -R, –recursive Рекурсивное удаление каталогов и их содержимого. -v, –verbose Вывод подробной информации о процессе. –help Вывод справочной информации о команде.
Теперь разберем некоторые опции, которые часто используются при удалении файлов в Linux через терминал. Например, очень часто возникает необходимость удалить папку вместе с всем содержимым. Для этого нужно использовать опцию «-r», которая включает рекурсивный обход папок. Например, для того чтобы удалить папку «folder1» и все ее содержимое нужно выполнить:
rm -r folder1/
Если права доступа к файлу разрешают только чтение, то в терминале Linux появится запрос подтверждения, и чтобы продолжить вам нужно будет ввести букву «y» (от англ. «yes»).
Чтобы избежать такой ситуации и удалять все файлы без предупреждения нужно использовать опцию «-f». Например:
rm -f file.txt
Не редко возникает необходимость удалить папку вместе со всеми файлами и без запросов на подтверждение. В этом случае нужно комбинировать опции «-r» и «-f». В результате команда выглядит вот так:
rm -rf folder1/
Если вы, наоборот, хотите каждый раз получать запрос подтверждения, то команду «rm» нужно выполнять с опцией «-i». Например, для того чтобы удалить все файлы в текущем каталоге с запросом подтверждения нужно выполнить:
rm -i *
Также бывает полезной опция «-v». При ее использовании в терминале будет появляться подробная информация о выполняемых действиях. Например, для того чтобы удалить все файлы в текущем каталоге и вывести информацию в терминал нужно выполнить:
rm -v *
Также вывод информации можно перенаправить в файл. Для этого после команды нужно использовать оператор перенаправления вывода (>) и указать название файла. Например:
rm -v * > delete.log
Естественно все эти опции можно комбинировать, в зависимости от ваших задач.
Как удалить каталоги (папки)
- Для удаления пустого каталога используйте эту опцию -d.rm -d dirname
- Чтобы удалить непустые каталоги и все файлы внутри них, используйте параметр r (рекурсивный).rm -r dirname
Если каталог или файл в каталоге защищены от записи, вам будет предложено подтвердить удаление.
- Чтобы удалить непустые каталоги и все файлы без запроса, используйте r (рекурсивные) и параметр -f.rm -rf dirname
- Чтобы удалить сразу несколько каталогов, используйте команду rm, за которой следуют имена каталогов, разделенные пробелом.rm -r dirname1 dirname2 dirname3
То же, что и в файлах, вы также можете использовать подстановочный знак ( *) и регулярные выражения для соответствия нескольким каталогам.
Выводы
Вот и все. Теперь вы знаете как удалить файл в Ubuntu, как видите, делать это не так уж сложно. Если у вас остались вопросы, пишите в комментариях!
[spoiler title=”Источники”]- https://andreyex.ru/operacionnaya-sistema-linux/kak-udalyat-fajly-i-katalogi-s-pomoshhyu-komandnoj-stroki-linux/
- https://otus.ru/nest/post/981/
- https://lumpics.ru/how-create-or-delete-file-in-linux/
- https://ru.ditching.eu/kak-udalit-fajl-v-linux/
- https://www.vseprolinux.ru/udalit-fajl-linux
- https://comp-security.net/%D0%BA%D0%B0%D0%BA-%D1%83%D0%B4%D0%B0%D0%BB%D0%B8%D1%82%D1%8C-%D1%84%D0%B0%D0%B9%D0%BB-%D0%B2-linux-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-%D1%82%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D0%B0%D0%BB/
- https://losst.ru/kak-udalit-fajl-cherez-terminal-linux