我创建了一个符号链接(昨天),如下所示:
sudo ln -s bin/python /usr/bin/prj-python
当我跑步时:
prj-python file.py
我得到:
prj-python: command not found
当我尝试再次创建链接时,我得到:
ln:创建符号链接“/usr/bin/prj-python”:文件存在
为什么会发生这种情况?我的$PATH
是:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/real/RealPlayer
答案1
需要检查的事项:
- 执行一个
ls -l /usr/bin/prj-python
如果是这样:lrwxrwxrwx (...) /usr/bin/prj-python -> bin/python
该文件实际上将在以下位置搜索/usr/bin/bin/python(这就是 xralf 试图说的)。使固定:rm /usr/bin/prj-python
ln -s /full/path/to/your/python /usr/bin/python-prj
- 如果您
bin/python
是 shell 脚本(又名包装脚本),请检查#!-线(有时称为舍邦-line) 在第一行。如果有这样的拼写错误#!/bin/bush
会导致未找到错误信息也。
答案2
你忘记了之前的第一个斜杠bin/python
。这意味着/usr/bin/prj-python
现在指向/usr/bin/bin/python
.您希望它准确指向什么?