我可以“注册”python脚本在Windows上执行吗?

我在Windows XP上安装了Python 2.5,并在某个目录中提供了一组脚本。 根据Amanda Birmingham的这篇文章 ,我可以为Python可执行文件和脚本所在的地方build立一个path。 这意味着我可以做到这一点:

c:\>python script.py 

有没有办法,我可以注册.py文件,所以我可以像这样执行它们:

 c:\>script.py 

而不包括脚本中的shebangenv行。

打字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上的应用程序相关联,则可以:

  1. 打开资源pipe理器窗口。
  2. 从工具菜单中select“文件夹选项”。
  3. 点击“文件types”选项卡。
  4. 点击“新build”button(假设PY / PYC / PYW尚未存在)。
  5. input扩展名(例如“py”,“pyc”或“pyw”),然后单击“确定”
  6. 点击“更改…”button。
  7. select“从列表中select程序”
  8. find你的Python解释器(例如C:\ Python2X中的python.exe或pythonw.exe)
  9. 确定你的方式退出。

这些是XP的说明。 我认为,Vista和Win7基本上是一样的,虽然你可能以其他方式到达列表。