Я устанавливаю p4v в /opt
, но /usr/bin
на моем пути. Возможно ли создать мягкую или символическую ссылку для p4v из /opt
в /usr/bin
, поэтому я могу просто набрать «p4v», так как /usr/bin
находится на моем пути?
Я устанавливаю p4v в /opt
, но /usr/bin
на моем пути. Возможно ли создать мягкую или символическую ссылку для p4v из /opt
в /usr/bin
, поэтому я могу просто набрать «p4v», так как /usr/bin
находится на моем пути?
См. man ln
.
Чтобы создать символическую ссылку в /usr/bin/bar
, которая ссылается на исходный файл /opt/foo
, используйте:
ln -s /opt/foo /usr/bin/bar
Вам нужно будет применить указанную выше команду как root (т. е. с sudo
).
Ошибка в том, что вы неправильно написали команду. Правильный способ -
ln -s /<full>/<path>/<to>/<file> /usr/local/bin
Если исполняемый файл '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
Проверьте местоположение программного обеспечения. Р>
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
ln -s -n ./TargetDirectory ./Nickname
Примечание. Это работает, если вы оба узла находятся ниже вас в одном и том же дереве. Вы можете использовать относительные обозначения
Я обнаружил, что легче перейти туда, где вы хотите, чтобы была ссылка, а затем создать ссылку, используя sudo ln -s /path/to/source/file
, чем ln -s target source
. Р>
Итак, в вашем случае я бы сделал cd /usr/bin
, а затем sudo ln -s /opt/bin/pv4
. Другой способ не работал в моем случае.
Этот шаблон был более полезен для меня, чем приведенные выше ответы. Вероятно, не более корректно, только меньше запутано:
ln -s <path/to/real/file-or-folder> <symlink path>
Просто замените части в <>
Если он говорит target is not a folder
, это означает, что в именах папок есть пробелы, например: New Folder
имеет пробел
Вам нужно отредактировать путь и добавить обратную косую черту \
после каждого пробела в пути
например:
ln -s /opt/bin /usr/var/New\ Folder