Вопрос: Как создать мягкую или символическую ссылку?


Я устанавливаю p4v в /opt, но /usr/bin на моем пути. Возможно ли создать мягкую или символическую ссылку для p4v из /opt в /usr/bin, поэтому я могу просто набрать «p4v», так как /usr/bin на моем пути?


351
2017-08-08 19:17


Источник


stackoverflow.com/questions/1951742/... - Dante


Ответы:


Видеть man ln,
Создание символической ссылки /usr/bin/bar => /opt/foo, (т. е. создать символическую ссылку в /usr/bin/bar который ссылается на исходный файл /opt/foo) делать:

ln -s /opt/foo /usr/bin/bar

Вам нужно будет применить вышеуказанную команду как root (с sudo).


500
2017-08-08 19:20



Я использую: sudo ln –s /etc/apache2/sites-available/redmine /etc/apache2/sites-enabled/000-redmine получение ошибки: ln: target '/etc/apache2/sites-enabled/000-redmine' is not a directory - RAJ ...
@RAJ ...: Возможно, пример может помочь ln -s /etc/vim/vimrc /home/paf/Copy/Programming/Apps/Tools/Vim - pablofiumara
Хотя César хотел поместить свои файлы в / opt и / usr / bin, чтобы иметь символическую ссылку, а не наоборот. - mishap
@mishap прав, насколько мне известно. Это наоборот. - Daniel Szmulewicz
@kevinmicke после того, как ваше объяснение наконец поняло, что объяснение ответа было указано в обратном порядке от команды, заставив мой мозг (и другие) прочитать его назад - Andrew


Ошибка в том, что вы неправильно написали команду. Правильный путь

ln -s /<full>/<path>/<to>/<file> /usr/local/bin

http://ubuntuforums.org/showthread.php?t=2001697


27
2018-04-03 19:15



Спасибо, ясно, а не назад. , , - Andrew


Если исполняемый файл «p4v» находится в / opt / bin / p4v, вы можете просто запустить:

sudo ln -s /opt/bin/p4v /usr/bin/p4v
sudo chmod ugo+x /usr/bin/p4v

Было бы лучше добавить / opt / bin (или везде, где исполняемый файл) к вашему пути:

echo "export PATH=\$PATH:/opt/bin" >> ~/.profile
reset

20
2017-08-08 19:23



~/.profile было бы лучше установить $PATH, - Lekensteyn
вы можете редактировать /etc/environment для изменения системы PATH. - Michał Šrajer


Проверьте местоположение программного обеспечения.

which application-name #replace for the application you are looking for

например

which skype

выход будет таким.

/usr/bin/skype 

Чтобы создать мягкую ссылку. например, вы хотите создать skype на рабочем столе

ln -s /usr/bin/skype ~/Desktop/

Для получения дополнительной информации о ln,

man ln

или

ln --help

4
2018-06-24 19:41





ln -s -n ./TargetDirectory ./Nickname

Обратите внимание, что это работает, если вы оба узла находятся ниже вас в одном дереве. Вы можете использовать относительные обозначения

  • -s делает символическую ссылку
  • -n позволяет создать символическую ссылку типа папки

1
2017-12-11 23:32



Добро пожаловать на сайт askubuntu.com. В этом случае $ для указания командной строки - это выбор стиля, и вряд ли это будет проблемой. Однако имейте в виду, что включение в блок кода, отличное от кода и его вывода, может привести к путанице. - J. Starnes


Если он говорит target is not a folder, это означает, что в именах папок есть пробелы, например: New Folder имеет место

Вам нужно отредактировать путь и добавить обратную косую черту \ после каждого пробела на дорожках

например:

ln -s /opt/bin /usr/var/New\ Folder

0
2017-11-09 04:43



Это не ответ на вопрос ОП. Подождите, пока у вас недостаточно репутации, чтобы добавлять комментарии. - derHugo


Я обнаружил, что проще перейти туда, где вы хотите, чтобы была ссылка, а затем создать ссылку, используя sudo ln -s /path/to/source/file, чем делать ln -s target source,

Так что в вашем случае я бы сделал cd /usr/bin тогда sudo ln -s /opt/bin/pv4, Другой способ не работал в моем случае.


0
2018-04-17 17:06