Командная строка Linux. Полное руководство (Шоттс) - страница 23

Рекурсивно удалить каталоги. То есть вместе с каталогом будут удалены все его подкаталоги. Это обязательный параметр при удалении каталогов

-f, --force

Игнорировать отсутствующие файлы и не запрашивать подтверждения. Этот параметр отменяет действие параметра --interactive

-v, --verbose

Выводить информационные сообщения в процессе удаления


будьте осторожны с командой rm!

Unix-подобные операционные системы, такие как Linux, не имеют команды, отменяющей удаление. Если вы что-то удалили командой rm, это исчезнет навсегда. Linux считает вас достаточно ответственным человеком, отдающим себе отчет в своих действиях.

Будьте особенно осторожны с групповыми символами. Рассмотрим следующий классический пример. Допустим, вы захотели удалить все файлы HTML в каталоге. Для этого вы вводите команду:

rm *.html

которая сделает именно то, что вам нужно, но если вы случайно вставите пробел между * и .html, как в следующей команде:

rm * .html

rm удалит все файлы в каталоге и затем сообщит, что не нашла файла .html.

Полезный совет: всякий раз, используя групповые символы с командой rm (помимо внимательной проверки ввода!), проверьте сначала аргумент с групповым символом с командой ls. Это позволит увидеть, какие файлы будут удалены. Затем нажмите клавишу со стрелкой вверх, чтобы восстановить команду из истории, и замените ls на rm.

Таблица 4.9. Примеры использования команды rm

Команда

Результат

rm file1

Просто удалит файл file1

rm -i file1

Перед удалением file1 запросит подтверждение у пользователя

rm -r file1 dir1

Удалит файл file1 и каталог dir1 со всем его содержимым

rm -rf file1 dir1

То же, что и выше, но в отсутствие file1 и/или dir1 просто продолжит работу, не выводя никаких сообщений


ln — создание ссылок


Команда ln применяется для создания жесткой или символической ссылки. Ее можно использовать одним из двух способов:

>ln файл ссылка

создает жесткую ссылку.

ln -s элемент ссылка

создает символическую ссылку, где элементом может быть файл или каталог.

Жесткие ссылки


Жесткие ссылки — это первоначальный способ создания ссылок в Unix; символические ссылки — более позднее изобретение. По умолчанию каждый файл имеет одну жесткую ссылку, определяющую его имя. Создавая жесткую ссылку, мы создаем дополнительную запись в каталоге для файла. Жесткие ссылки имеют два важных ограничения.

• Жесткая ссылка не может указывать на файл за пределами собственной файловой системы. Это означает, что ссылка не может указывать на файл, находящийся в другом разделе диска.

• Жесткая ссылка не может указывать на каталог.

Жесткая ссылка неотличима от самого файла. В отличие от символических ссылок, при выводе списка с содержимым каталогов жесткие ссылки никак не выделяются. При удалении жесткой ссылки удаляется только сама ссылка, а файл остается на месте (то есть пространство, занимаемое файлом, не освобождается), пока не будут удалены все жесткие ссылки на файл.