在 Ubuntu (10.10) 系统上,我有一个 Python 包,可以将自身安装到/usr/local/lib/python2.6/site-packages/
. 这不包含在默认路径 (sys.path) 中。如何将此目录添加到路径中?
设置$PYTHONPATH
环境变量当然是一种解决方案,但我正在寻找一种更优雅的方法来做到这一点。例如easy_install
还把安装的包放在里面,我的 sys.path 看起来像这样:
['', '/usr/local/lib/python2.6/dist-packages/keyring-0.5.1-py2.6.egg',
'/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk',
'/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload',
'/usr/local/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages',
'/usr/lib/python2.6/dist-packages/PIL', '/usr/lib/pymodules/python2.6',
'/usr/lib/pymodules/python2.6/gtk-2.0']
Run Code Online (Sandbox Code Playgroud)
所以该路径显然不是 Python 二进制文件中内置的默认路径。
是否有一个包含上述条目的配置文件?或者可以通过什么方式修改它?
我在路径中的变量值如下
C:\ProgramData\Oracle\Java\javapath;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Skype\Phone\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;%PYTHON_HOME%\;%PYTHON_HOME%\Scripts;C:\SQLite
Run Code Online (Sandbox Code Playgroud)
当我echo %Path%
在命令提示符下键入时,我得到以下输出
PS C:\Users\Arun> echo %Path%
%Path%
Run Code Online (Sandbox Code Playgroud)
为什么是这样?
我曾尝试安装 MacPorts 以升级我的 Rails 版本,以便我可以通过 Rails、PragProg(2011 年第 4 日)进行敏捷 Web 开发。我已按照书中以及MacPorts 网站上的说明从磁盘映像执行安装。它似乎安装正确,但是,之后运行端口命令返回“端口:未找到命令”。
我搜索了 Stack Exchange 并发现了这个问题,所以我尝试使用“tar xjvf MacPorts-1.9.2.tar.bz2”从命令行安装。同样,安装似乎有效。我收到 MacPorts 安装成功的确认,但在尝试自我更新 MacPorts(通过“sudo port -v selfupdate”)时我仍然收到“sudo: port: command not found”错误。
我认为我的错误在于没有设置正确的路径。我遵循了this thread中的建议,即在paths.d中添加路径(/opt/local),但我仍然收到错误消息。
如果重要,终端设置为使用默认登录 shell (/usr/bin/login) 打开 shell。我应该将其更改为 /bin/bash 吗?
那么,这是 MacPorts 问题、$PATH 问题还是 StupidUser 问题?
我想在 ~/.bashrc 中添加几个目录到我的 $PATH。
我的 $PATH 很长,所以很难看出它包含哪些目录以及以什么顺序。
我知道我可以修改我的 ~/.bashrc 为:
PATH=$PATH:/some/dir
PATH=$PATH:/another/dir:/yet/another
PATH=$PATH:/and/another
...
Run Code Online (Sandbox Code Playgroud)
它会让它更容易阅读。但我想知道在过去的几年里,Bash 是否已经获得了一些使指定长 PATH 更容易的语法。例如,我在幻想类似于以下的语法:
PATH=:((
/some/dir
/another/dir
/yet/another
/and/another
...
))
Run Code Online (Sandbox Code Playgroud)
我知道这样的语法是无效的。我想知道是否有这么简单的事情。在那儿?
如何从 Windows 7 上的非管理员帐户设置用户环境变量(例如 PATH)?
在 Windows XP 上,我可以进入系统控制面板中的高级设置。但是,在 Windows 7 上,我被要求提供管理员密码。
我正在使用 cmd 控制台在 Windows 7 上工作。如何在提示中隐藏路径?
我有默认的 OpenSSL 9.8 (Mac OS X 10.6.8) 并决定通过 MacPorts ( sudo port install openssl
)安装最新版本 (1.0.1 )。
这些是which和whereis命令的控制台输出:
$ whereis openssl
/usr/bin/openssl
Run Code Online (Sandbox Code Playgroud)
(这是默认系统的一个)
$which openssl
/opt/local/bin/openssl
Run Code Online (Sandbox Code Playgroud)
(这是通过 MacPorts 安装的)
$ openssl version
OpenSSL 1.0.1c 10 May 2012
Run Code Online (Sandbox Code Playgroud)
(PATH中有mac端口的版本)
为什么为whereis
and返回了不同的路径which
,这可以吗?有什么办法可以得到相同的结果吗?
我无法找到此信息,反复试验告诉我可能没有任何信息。OS X Lion (10.7) 上文件名的无效字符是什么?
我知道我可以通过以下方式在 Windows 8 中编辑我的环境变量
Start -> All Apps -> Control panel -> System ->
Advanced System Settings -> Advanced -> Environment variables.
Run Code Online (Sandbox Code Playgroud)
但老实说,这太复杂了。
有没有更简单的方法来更改 Windows 8 中的环境变量?
例如,如果我只想将新文件夹附加到 PATH,那么执行所有这些步骤真的很烦人。UI 也很糟糕,因为用小文本输入编辑长变量值真的很痛苦。
要求 1:我需要保留更改(例如,当我set
在控制台中使用时,关闭控制台时更改会丢失)
要求 2:我更喜欢不涉及安装额外软件的解决方案,因为这是我每次配置新 Windows 机器时都会遇到的问题。
我正在尝试使用start
命令提示符中的命令打开文件和文件夹,但我无法打开名称中包含空格的文件和文件夹。
我尝试了以下查询(在 上测试C:\Program Files
):
start C:\Program Files
start C:/Program\ Files
start C:/"Program Files"
start C:\"Program Files"
start "C:\Program Files"
start "C:/Program Files"
start C:/Program_Files
start C:/Program%20Files
Run Code Online (Sandbox Code Playgroud)
但它们都不起作用。