【发布时间】:2013-03-24 10:57:41
【问题描述】:
这里是 rMBP。我不确定负责执行此操作的脚本是什么。基本上我想将python utils的路径添加到$PATH...
例如,我为了得到pip而酿造了pythonbrew python,然后运行pip install flake8。现在
$ which flake8
flake8 not found
$ find / | grep flake8
...
......
/usr/local/share/python/flake8
$ ls -la /usr/local/share/python/
total 32
drwxr-xr-x 6 lust admin 204 Apr 2 18:15 .
drwxr-xr-x 15 lust admin 510 Apr 2 18:12 ..
lrwxr-xr-x 1 lust admin 45 Apr 2 18:13 Extras -> ../../Cellar/python/2.7.3/share/python/Extras
-rwxr-xr-x 1 lust admin 389 Apr 2 18:15 flake8
-rwxr-xr-x 1 lust admin 385 Apr 2 18:15 pep8
-rwxr-xr-x 1 lust admin 405 Apr 2 18:15 pyflakes
好的!
$ cat /private/etc/paths
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
$ sudo vim /private/etc/paths
$ cat /private/etc/paths
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
/usr/local/share/python
制作一个新的外壳,检查$PATH,python 不存在。好的。
重启,启动一个新的shell,检查$PATH,python still不存在。
哦,顺便说一句,解决方案是不追加,像export PATH=$PATH:newpath,因为我实际上并不关心从命令行运行flake8,我想要Sublime Text 3 的 SublimeLinter 插件可以真正知道它在哪里,而无需在编辑器的设置中添加一些 hacky 配置。
【问题讨论】:
-
我不确定
/private在 OSX 中的用途,但您是否尝试过仅编辑/etc/paths?如果您只关心自己的用户,只需将export PATH=/usr/local/bin:$PATH放入您的~/.profile或~/.bashrc或任何适合您的shell 的地方。 -
/etc/paths 似乎是 /private/etc/paths 的镜像,即重启后它包含相同的内容。