Безопасный способ удалить символическую ссылку на несуществующий каталог (для двоичного файла python) - PullRequest
3 голосов
/ 27 февраля 2011

Я случайно набрал:

sudo ln -sf /usr/local/bin/python2.5/ /usr/bin/python 

вместо:

sudo ln -sf /usr/local/bin/python2.5 /usr/bin/python

Теперь bash говорит мне, что / usr / bin / python не является каталогом, когда я запускаю python.

ls -l /usr/bin/python gives me expectedly /usr/bin/python --> /usr/local/bin/python2.5/

Есть ли какой-нибудь безопасный способ удалить эту символическую ссылку на каталог (который не существует) и заменить его ссылкой на нужный файл?

Аригато заранее, если есть идеи.

Я застрял ....

Ответы [ 3 ]

5 голосов
/ 27 февраля 2011

Вы можете просто удалить ссылку с помощью rm:

rm /usr/bin/python
0 голосов
/ 12 октября 2011

это сработало для меня. Хотя я изначально создал символическую ссылку после учебника по blender http://wiki.blender.org/index.php/Dev:2.5/Doc/Building_Blender/Linux/Troubleshooting#Setting_Python_Path_in_SCons

с помощью этой команды:

sudo update-alternatives --install /usr/bin/python python /your/path/to/python3.2 1

(см. Справочную страницу для альтернатив обновления для информации. Терминал> man update-alternatives)

Мне любопытно узнать, насколько сильно я все испортил для системы альтернативных обновлений управления различными версиями одноименного программного обеспечения. Например, я думаю, что scons работает на python2.7, в то время как blender собирается внутри с python3.2. Будет ли все еще правильно? Посмотрим ...

0 голосов
/ 27 февраля 2011

Вы удаляете символическую ссылку так же, как вы удаляете обычный файл, даже если это символическая ссылка на каталог.(Если цель не существует, это спорный вопрос, будь то каталог или файл.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...