ln

Создание ссылок (псевдонимов) для файлов (POSIX)

Синтаксис:

ln [-f|-F|-i] [-Psv] исходный_файл конечный_файл 
ln [-f|-F|-i] [-Psv] исходный_файл... результ_каталог

Опции:

-f
Принудительно удалять результирующие путевые имена перед созданием ссылки; не запрашивать подтверждение.
-F
При создании менеджером процессов символьной ссылки (-P) игнорировать существование целевых файлов/каталогов.
-i
(Расширение ЗОСРВ «Нейтрино») Выполнить в интерактивном режиме; отправить приглашение в стандартный поток ошибок с запросом подтверждения для каждой ссылки, перезаписывающей существующий файл.
-P
Создать ссылку в дереве префиксов менеджера процессов в оперативной памяти.
-s
Создать символьную ссылку.
-v
Вывести расширенную информацию. Записывать сообщения о выполняемых действиях в стандартный поток вывода.
исходный_файл
Путевое имя файла, на который создается ссылка. Если указана опция -s, то наличие этого файла не требуется.
конечный_файл
Путевое имя создаваемой записи каталога.
результ_каталог
Путевое имя существующего каталога, в котором будут создаваться новые записи каталога.

Платформы:

ЗОСРВ «Нейтрино»

Целевые архитектуры:

aarch64, arm, armv7, e2k, mips, ppc, x86

Описание:

Утилита ln имеет следующие две формы синтаксиса:

ln [-f|-i] [-s] исходный_файл конечный_файл
Утилита ln создает новую запись каталога (ссылку) по целевому пути, заданному в операнде конечный_файл, которая указывает на исходный файл как жесткая или символьная ссылка, в зависимости от опции -s. Эта форма синтаксиса принимается в случае, если в качестве результирующего указан не существующий каталог.
ln [-f|-i] [-s] исходный файл... результ_каталог
Для каждого значения исходный файл утилита ln создает новую запись каталога по целевому пути в существующем каталоге, заданном в операнде результ_каталог.

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

ln dir/dir/myfile /existingdir

Создается файл /existingdir/myfile в виде ссылки на файл dir/dir/myfile.

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

Если целевой путь существует и имеются полномочия на запись в существующий целевой файл или если указана опция -f, то утилита ln сначала удаляет ссылку на целевой объект и создает новую ссылку.

Если полномочия на запись по пути существующего каталога отсутствуют и не использована опция -f, и при этом стандартным потоком ввода является терминал ввода-вывода, то перед удалением ссылки на существующий файл утилита ln запрашивает подтверждение. Если стандартным потоком ввода является не терминал ввода-вывода, то утилита ln отправляет в стандартный поток ошибок диагностическое сообщение и переходит к следующему файлу исходный_файл, ссылка на целевой файл не удаляется.

Для создания новой ссылки или замены файла на ссылку необходимы полномочия на запись в каталог, в котором будет находиться новая ссылка. Следует отметить, что эти полномочия всегда предоставляются пользователю root независимо от параметров настройки прав доступа к файлу.

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

Если указана опция -P, то ссылка создается в дереве префиксов путевых имен, расположенном в памяти менеджера процессов ЗОСРВ «Нейтрино» procnto. Это позволяет создавать новые ссылки на путевые имена без необходимости применения традиционной файловой системы. Если указана опция -s, то выполняется символьное перенаправление. Если опция -s не указана, то создается прямая ссылка на указанный менеджер ресурсов. Менеджер ресурсов должен быть указан в источнике в следующем формате: идентификатор_узла,идентификатор_процесса,идентификатор_канала,описатель, где:

идентификатор_узла
Идентификатор узла менеджера ресурсов, на который создается ссылка.
идентификатор_процесса
Идентификатор процесса менеджера ресурсов, на который создается ссылка.
идентификатор_канала
Идентификатор канала менеджера ресурсов, на который создается ссылка.
описатель
Описатель префикса путевого имени менеджера ресурсов, на который создается ссылка.

Большинство префиксных ссылок являются символьными.

Примеры:

Создание ссылки на каталог /home/curious/monkey с именем gorilla в каталоге /home/george:

ln /home/curious/monkey /home/george/gorilla

Создание символьной ссылки на каталог /home/fred с именем /home/barney:

ln -s /home/fred /home/barney

Создание символьной префиксной ссылки на файл /dev/shmem из /tmp. Эта простая ссылка отображает все промежуточные файлы, созданные в каталоге /tmp, на объекты разделяемой памяти, для реализации диска в оперативной памяти.

ln -sP /dev/shmem /tmp

Создание символьного префикса /dev/ser1 из /dev/modem. При попытке открыть /dev/modem будет открыт /dev/ser1.

ln -sP /dev/ser1 /dev/modem

Возвращаемое значение:

0
На все указанные файлы успешно созданы ссылки.
>0
Возникла ошибка.

Предостережения:

При создании символьной ссылки утилита ln не проверяет фактическое наличие файла исходный_файл или правильность его путевого имени. Если этот файл не существует или значение исходный_файл не является действительным путевым именем, любая попытка использования ссылки будет неудачной.


Caution: Если целевой путь существует и работа утилиты ln прервана до завершения, то перед созданием новой ссылки этот целевой путь может быть удален.

Классификация:

Базовые подсистемы ЗОСРВ «Нейтрино», POSIX

Тематические ссылки:

cp, mv




Предыдущий раздел: Утилиты