为可移植Python设置$PATH
我在我的USB闪存驱动器上安装了几个版本的便携式Python,这样我就可以在离开主电脑时玩玩,或者想尝试不同版本的时候使用。
现在它安装在 'F:\Portable Python 2.7.2.1\App\python.exe' 这个路径下,反复输入这个路径有点麻烦。虽然命令行历史记录和自动补全可以减轻一些麻烦,但我在想有没有更好的方法设置,让我可以简单地输入 'python myscript.py',而不是每次都输入完整的路径和脚本名。也就是说,我希望 'python' 能指向上面的可执行文件(或者让 'python3' 指向 f:\Portable Python 3.2.1.1),而不需要在电脑上永久安装Python。
我试过用一个简单的 .bat 文件,命名为 'python.bat',当我调用它时,它会执行指定的文件……这在我使用的机器上有效,直到我遇到两种情况:一是我换了台机器,USB闪存驱动器被分配了不同的驱动器字母;二是我尝试运行一个需要多个命令行参数的脚本,这似乎没有通过这个bat文件。
我在想,按照类Unix系统的说法,我可能需要在会话中设置环境变量 $PATH,然后在完成后再取消设置。这可能是一个很好的第一个实用Python脚本,但显然我需要一些帮助,看看我是否在正确的方向上,等等。
谢谢大家,
Monte
1 个回答
如果你在 *nix 系统上,可以创建一个相对符号链接。
我建议你把文件夹的名字简化一些,尽量去掉空格。你的闪存驱动器上的内容有多复杂呢?这样做不是更合理吗?
F:\python\2.7\python.exe
我怀疑你的闪存驱动器上会有常规的和便携版的 Python,但如果你想要更多的描述,可以这样写:F:\ppython\2.7\python.exe
为了更直接地回答你的问题,可以在命令行、批处理脚本中运行下面的内容,或者直接在 Python 中执行:
set path = "%PATH%;C:\Some Ridiculous Name with CaPiTals and Spaces\"
我建议你整理一下你的文件夹结构并且在闪存驱动器上放一个批处理脚本,用来临时设置环境变量。