我在Windows XP上安装了Python 2.5,并在某个目录中提供了一组脚本。 根据Amanda Birmingham的这篇文章 ,我可以为Python可执行文件和脚本所在的地方build立一个path。 这意味着我可以做到这一点:
c:\>python script.py
有没有办法,我可以注册.py文件,所以我可以像这样执行它们:
c:\>script.py
而不包括脚本中的shebang或env行。
打字less就等于好。 🙂
是的:)这其实是FAQ#2 :
如果您希望能够通过简单地input“foo”而不使用扩展名来执行脚本,则需要将.py添加到PATHEXT环境variables中。
编辑:当然,不要忘记将Python安装目录添加到PATH中,并且如果通过该命令解释器之外的手段修改系统范围或用户PATH和/或PATHEXT,则启动另一个命令解释器实例。
进一步编辑:如果我误解了你的问题:我假设你只是有兴趣启动python脚本,而不必从cmd.exe命令行input.py扩展名。 PATHEXT是一个特定于cmd.exe shell和其他shell(以及CreateProcess()
和朋友)的机制,并不关心它。
我有完全相同的问题与PHP。
http://php.net/manual/en/install.windows.legacy.index.php#install.windows.legacy.commandline (编辑:似乎PHP的命令行用法现在是“遗产”)
有一件事,我发现是能够使用PHP脚本作为filter…
DIR C:\ | scripts\script | more
(例如 – 其中脚本\脚本是一个PHP脚本 – 注意:没有PHP的参考)。
这需要registry更改。 适用于Windows(PHP,Python,Perl,Ruby)上的所有这些解释器types语言。
PATHEXT将允许你离开“.py”,但这不是你要求的,对吗?
如果您想将文件扩展名与Windows上的应用程序相关联,则可以:
这些是XP的说明。 我认为,Vista和Win7基本上是一样的,虽然你可能以其他方式到达列表。