rm
rm (от англ. remove) — утилита в UNIX и UNIX-подобных системах, используемая для удаления файлов из файловой системы. Ключи, использующиеся с rm:
-r
— обрабатывать все вложенные подкаталоги. Данный ключ необходим, если удаляемый файл является каталогом, пусть даже пустым. Если удаляемый файл не является каталогом, то ключ-r
не влияет на команду rm.-i
— выводить запрос на подтверждение каждой операции удаления.-f
— не возвращать код ошибочного завершения, если ошибки были вызваны несуществующими файлами; не запрашивать подтверждения операций.
Например, команда rm -rf mydir
рекурсивно удалит без подтверждения и кода ошибочного завершения файл (или каталог) mydir.
rm
часто является синонимом команды rm -i
, то есть команда по умолчанию запрашивает подтверждение перед удалением файлов, что позволяет предотвратить их случайное удаление. Если пользователю нужно удалить большое количество файлов без подтверждения операции, можно отменить действие ключа -i
с помощью добавления ключа -f
.
Удаление корневого каталога
[править | править код]Иногда, в различных конференциях более опытные пользователи, при просьбе дать совет менее опытному, предлагают ввести в консоль команду sudo rm -rf /
, которая, в свою очередь, удаляет всё содержимое корневой папки. По этому поводу существует шутка, так называемый патч Бармина, гласящая, что данная команда является универсальным способом починить любые проблемы в SCO Unix.
Компания Sun реализовала защиту от rm -rf /
в Solaris 10, выпущенном в 2005 году[1]. При выполнении команды система теперь сообщает, что удаление / не разрешено. Вскоре после этого такая же функциональность была реализована в команде rm, поставляемой с FreeBSD. GNU не выполняет команду rm -rf /
, если не указан параметр --no-preserve-root
[2]. Такое поведение было реализовано в пакете GNU Core Utilities версии 6.4, выпущенном в 2006 году.
Команда rm -rf /
может повредить UEFI[3].
См. также
[править | править код]Примечания
[править | править код]- ↑ Meddling in the Affairs of Wizards Архивировано 16 марта 2011 года.
- ↑ Treating / specially — GNU Coreutils . Дата обращения: 18 апреля 2012. Архивировано 2 апреля 2012 года.
- ↑ Выполнение rm -rf / может привести к неработоспособности UEFI-прошивки ноутбука . Дата обращения: 17 января 2019. Архивировано 19 января 2019 года.