Значение
-i, --interactive
Запрашивать у пользователя подтверждение перед удалением существующего файла. Если этот параметр отсутствует, команда rm просто удалит существующие файлы
-r, --recursive
Рекурсивно удалить каталоги. То есть вместе с каталогом будут удалены все его подкаталоги. Это обязательный параметр при удалении каталогов
-f, --force
Игнорировать отсутствующие файлы и не запрашивать подтверждения. Этот параметр отменяет действие параметра --interactive
-v, --verbose
Выводить информационные сообщения в процессе удаления
будьте осторожны с командой rm!
Unix-подобные операционные системы, такие как Linux, не имеют команды, отменяющей удаление. Если вы что-то удалили командой rm, это исчезнет навсегда. Linux считает вас достаточно ответственным человеком, отдающим себе отчет в своих действиях.
Будьте особенно осторожны с групповыми символами. Рассмотрим следующий классический пример. Допустим, вы захотели удалить все файлы HTML в каталоге. Для этого вы вводите команду:
rm *.html
которая сделает именно то, что вам нужно, но если вы случайно вставите пробел между * и .html, как в следующей команде:
rm * .html
rm удалит все файлы в каталоге и затем сообщит, что не нашла файла
Полезный совет: всякий раз, используя групповые символы с командой rm (помимо внимательной проверки ввода!), проверьте сначала аргумент с групповым символом с командой ls. Это позволит увидеть, какие файлы будут удалены. Затем нажмите клавишу со стрелкой вверх, чтобы восстановить команду из истории, и замените ls на rm.
Таблица 4.9. Примеры использования команды rm
Команда
Результат
rm file1
Просто удалит файл
rm -i file1
Перед удалением
rm -r file1 dir1
Удалит файл
rm -rf file1 dir1
То же, что и выше, но в отсутствие
ln — создание ссылок
Команда ln применяется для создания жесткой или символической ссылки. Ее можно использовать одним из двух способов:
ln
создает жесткую ссылку.
ln -s
создает символическую ссылку, где
Жесткие ссылки
Жесткие ссылки — это первоначальный способ создания ссылок в Unix; символические ссылки — более позднее изобретение. По умолчанию каждый файл имеет одну жесткую ссылку, определяющую его имя. Создавая жесткую ссылку, мы создаем дополнительную запись в каталоге для файла. Жесткие ссылки имеют два важных ограничения.
• Жесткая ссылка не может указывать на файл за пределами собственной файловой системы. Это означает, что ссылка не может указывать на файл, находящийся в другом разделе диска.
• Жесткая ссылка не может указывать на каталог.
Жесткая ссылка неотличима от самого файла. В отличие от символических ссылок, при выводе списка с содержимым каталогов жесткие ссылки никак не выделяются. При удалении жесткой ссылки удаляется только сама ссылка, а файл остается на месте (то есть пространство, занимаемое файлом, не освобождается), пока не будут удалены все жесткие ссылки на файл.
Знать о существовании жестких ссылок важно, потому что они будут встречаться вам время от времени, но в современной практике предпочтение отдается символическим ссылкам, о которых рассказывается далее.
Символические ссылки
Символические ссылки были придуманы с целью преодолеть ограничения жестких ссылок. Когда создается символическая ссылка, в действительности создается файл особого типа, содержащий текстовый указатель на файл или каталог. В некотором отношении они действуют подобно ярлыкам в Windows, но, конечно же, появились задолго до ярлыков Windows. ;-)
Файл, на который указывает символическая ссылка, и сама символическая ссылка почти неотличимы друг от друга. Например, если попытаться что-то записать в символическую ссылку, запись будет выполнена в файл, на который она указывает. Однако при удалении символической ссылки удаляется только символическая ссылка, но не файл. Если удалить файл до того, как будет удалена символическая ссылка, ссылка останется на месте, но будет указывать в никуда. О таких ссылках говорят, что они «битые». Во многих реализациях команда ls выделяет битые ссылки цветом, например, красным, чтобы обратить на них внимание.
Идея ссылок может показаться странной и непонятной, но оставьте ее пока. Мы опробуем их на практике, и многое, возможно, для вас прояснится.
Давайте построим песочницу
Поскольку мы собираемся на практике опробовать некоторые операции с файлами, давайте выделим безопасный уголок для «игр» с командами управления файлами. Прежде всего нам понадобится каталог, в котором мы будем практиковаться. Создайте такой каталог в своем домашнем каталоге и назовите его