7
touch a
ln -s a b

Приведенная выше команда создает символическую ссылку, которая начинается с "b" и указывает на "a":

lrwxrwxrwx  1 root root     1 Dec 20 23:41 b -> a

Вопрос в том, как это правильно сказать? Если это правильно, то почему обратное направление, то есть "b" является источником, а "a" является целью. А какая сущность является самой символической ссылкой ?

3 ответа3

10

Синтаксис ln параллелен синтаксису cp и mv .

cp a b

создает файл с именем b содержащий содержимое файла a .

ln –s a b

создает символическую ссылку с именем b которая указывает на a (т. е. обеспечивает доступ к содержимому a).  Так же,

ln a b

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

0

Просто помните, что ls -l отображает ссылку в обратном режиме.

Чтобы узнать, куда указывает ссылка, вы можете сделать:

$ file b
b: symbolic link to `a'
0

тире, вы неправильно интерпретируете вывод.

В выводе ls думайте о стрелке и ее направлении как о "указывает на".

Прочитайте b пунктов в a. Делает символическую ссылку. Легко, правда.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .