bash(1)
将搜索您的PATH
环境变量以查找要执行的程序。 PATH
通常不包含您的“当前工作目录”(.
),因为打开人多达琐碎的安全问题:
cd /home/unsavory_character/
ls
如果unsavory_character
地方一个可执行的/home/unsavory_character/ls
,增加了他或她的ssh(1)
关键看你~/.ssh/authorized_keys
文件,你会感到惊讶 - 他或她可以在没有密码的情况下登录。
因此,这些系统现在不会将当前工作目录添加到PATH
,因为它太不安全。
解决方法:
./manage.py runserver
当然,这假定您的当前工作目录是哪个目录包含了manage.py
脚本。这可能是一个安全的假设。如果您希望能够从文件系统的任何位置执行该文件,您可以通过编辑~/.profile
或~/.bash_profile
或~/.bashrc
文件将目录添加到您的PATH
。 (如果其中一个已经存在,选择一个,我似乎回忆其他人在OS X上发现其他问题的其中一个或另一个文件运行良好,另一个从未执行。)
(在我的情况下,我在一堆自己编写的实用程序,但你可能是在其他地方。改变路径,适当的。)
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
我已经试过那个,但没有奏效。尽管感谢您的帮助! – Javaaaa 2011-05-16 23:07:13