rm, unlink

rm, unlink - удалить объекты директории

rm [-f | -i] [-dIPRrvW] file ... unlink файл
Команда rm пробует удалить файлы, указанные в качестве аргументов командной строки, не являющиеся директориями. Если права доступа не позволяют запись, а устройством ввода ( stdin ), является терминал, у пользователю будет запрошено подтверждение удаления. Поддерживаемые опции:
-d
Попытаться удалить директории, как обычные файлы.
-f
Не запрашивать разрешение на удаление, вне зависимости от установленных прав доступа. В случае отсутствия файла, информация об этом выведена не будет, кроме того не будет изменен код об удачном завершении операции, для информирования о неудачном завершении. Так-же данная опция отменяет любую, ранее полученную, опцию -i.
-i
Интерактивный режим с запросом подтверждения удаления каждого файла, вне зависимости от установленных на файл прав доступа и является-ли терминал устройством stdin. Данная опция отменяет, ранее указанную опцию -f.
-I
Запрос, если удалению подлежит, более 3 файлов, или перед рекурсивным удалением директории. Данная опция обеспечивает почти такой-же уровень защиты от ошибки, как опция -i, при гораздо меньшем количестве запросов подтверждений.
-P
Перезаписывать файлы перед удалением. Сначала файлы перезаписываются значением 0xff, затем 0x00, затем 0xff, после чего удаляются. Файлы с несколькими жёсткими ссылками не могут быть перезаписаны, ни удалены без указания опции -f, при попытке удаления, будет выведено предупреждение. Если с данной опцией попробовать удалить файл с правами доступа "только чтение", будет выведено сообщение об ошибке а выполнение команды rm будет прервано. Файл при этом, удален или перезаписан, не будет.
-R
Попытаться удалить дерево каталогов, корень которого указан аргументом файл. Данная опция автоматически включает опцию -d. Если так-же указана опция -i, будут выводиться запросы на удаление содержимого каждой директории. В случае, если пользователь не подтвердил удаление директории, удаление текущего каталога будет пропущено.
-r
Аналог опции -R.
-v
Выводит дополнительную информацию при удалении файлов.
-W
Попытаться восстановить файлы, переданые в качестве параметров. В данный момент эта опция может быть использована только для восстановления файлов, "замазанных штрихом" ( covered by whiteouts ) в файловой системе union (см. undelete(2)).
Команда rm удаляет символические ссылки, но сами файлы, на которые эти ссылки указывают, при этом удалены не будут. При попытке удалить /, . или .. будет выведено сообщение об ошибке. В случае вызова команды rm, как unlink, может быть передан только один аргумент, который не может быть директорией. В данном режиме не могут быть переданы никакие опции, выполняется только unlink(2) с переданным аргументом. rm возвращает 0 в случае удачного удаления всех переданных ей каталогов и файлов. В противном случае, результат >0. Команда rm использует getopt(3) для анализа переданных ей аргументов, что позволяет ей принимать опцию -', которая вызовет остановку обработки переданных флагов там, где эта опция встретится. Это позволяет удалять файлы, имена которых начинаются с символа минус ( - ). Например:
rm -- -filename
Того же результата можно добиться, задавая имя файла с указанием абсолютного или относительного пути. Например:
rm /home/user/-filename
rm ./-filename
Если опция -P указывается совместно с опцией -f, то файл будет перезаписан и удалён даже если он имеет жёсткие ссылки. Смотри также chflags(1), rmdir(1), undelete(2), unlink(2), fts(3), getopt(3), symlink(7) Возможные проблемы Опция -P подразумевает, что нижележащая файловая система является файловой системой с фиксированными блоками ( fixed-block file system ). UFS является такой системой, а LFS - нет. Кроме этого, перезаписываются только обычные файлы, файлы всех остальных типов - нет. оптимизация системы