我做了一个很多python 脚本(例如 blah.py)位于我的脚本目录中,位于路径中。我只想输入“blah”来执行 blah.py。
但是当我这样做时 - 文件会在 Visual Studio 代码中打开?!
我无法理解为什么——当我输入
> ftype | grep -i python
Python.ArchiveFile="C:\WINDOWS\py.exe" "%L" %*
Python.CompiledFile="C:\WINDOWS\py.exe" "%L" %*
Python.File="C:\WINDOWS\py.exe" "%L" %*
Python.NoConArchiveFile="C:\WINDOWS\pyw.exe" "%L" %*
Python.NoConFile="C:\WINDOWS\pyw.exe" "%L" %*
进而
> assoc | grep -i .py
.py=Python.File
.pyc=Python.CompiledFile
.pyd=Python.Extension
.pyo=Python.CompiledFile
.pyw=Python.NoConFile
.pyz=Python.ArchiveFile
.pyzw=Python.NoConArchiveFile
所以根据我的阅读,.py 应该是一个 Python.File,它应该运行 C:\windows\py.exe。
有什么想法吗?到目前为止,我必须制作一个与每个 .py 文件相对应的 .bat 文件 - 只需运行它即可 :(
答案1
鉴于您最熟悉 Unix,我不确定您是否熟悉 Regedit 和 Windows 注册表。
因此,让我们为您提供一个简单且备受推崇的工具来处理此任务,而无需您手动编辑 Windows 注册表。
首次下载文件类型管理器来自 NirSoft。它由著名且值得信赖的开发人员 Nir Sofer 编写。它不是开源的(不幸的是),但 Nir 已经发布免费工具超过 15 年,并且记录良好。
现在在 FileTypesMan 中按照以下简单步骤操作:
- 在顶部窗格中找到
.py
文件类型并单击它。 - 在底部窗格中,找到
open
操作(Name
列)并双击它。 - 在随后出现的对话框中,将命令行更改为
"C:\Windows\py.exe" "%1"
- 在同一个对话框中,确保
Default Action
复选框被选中并且Disabled
复选框未被选中,然后单击“确定”关闭对话框。
瞧!您已经完成了。
您现在可以关闭 FileTypesMan。
根据所安装的 Windows 版本,您可能需要重新启动 shell。如果您不知道如何以编程方式执行此操作,只需注销并重新登录即可。或者,如果您愿意,也可以重新启动。
正如 Gerhard 在评论中提到的,允许脚本像这样直接运行存在很大的安全风险,但您提到您了解风险,并且权衡利弊对您来说是值得的。我只是在此回答中回顾这些评论,以便在评论被删除的情况下帮助将来的人们。
答案2
...我只想输入
"blah"
执行blah.py
- 你可以试试:2.添加扩展
.py
并.pyw
变量PathExt
3.运行你的文件
> Your_py_Script > Your_pyw_Script