繁体   English   中英

bat脚本链接到python脚本

[英]bat script linking to python script

我有一个.bat,它设置了一个环境,允许用户为特定的作业执行几个python脚本。 我的目标是创建脚本链接。

例如,用户运行.bat,弹出一个cmd窗口,而不是键入python theLongestPythonScriptNameInTheWorld.py他键入python go

我的目标平台是Windows XP,所以mklink不会在这里工作。 我不想使用fsutil hardlink 此外,我只是尝试set ok=theLongestPythonScriptNameInTheWorld.py ,但id反而避免用户必须键入python %go% (模数,因为如果我需要输入模数,它会让我感到沮丧)。 我也想避免使用WSH,因为我希望它能在本机XP安装上运行。

除了mklinkfsutilsetWSH之外还有其他解决方案吗?

您的批处理文件可以带一个参数,并使用它来决定运行哪个Python包。

@echo off
REM Set Environment Here
if %1=="GO" python yourLongestScriptNameInTheWorld.py %2 %3 %4 %5
if %1=="STOP" python anotherScript.py %2 %3 %4 %5

因此,如果批处理文件名为foo.bat则可以键入:

foo GO arg1 arg2 arg3

或者,如果您不希望用户将参数传递给bat文件(例如,您从图标快捷方式运行它),则可以使用CHOICE命令提示用户从列表中选择Python包。

我相信,最终,您将意识到您正在使用一种非常糟糕的脚本语言来运行您喜欢的脚本语言,并决定使用所有这些IN Python而不是批处理命令语言。

如果你想输入python go ,我能想到的唯一办法是重命名你的脚本go

或者,像大多数其他人一样,创建一个名为go.bat的脚本,其中包含以下内容:

@echo off
python yourLongestScriptNameInTheWorld.py %*

您可以在此批处理文件中设置环境,然后运行go [your_args] 这对用户而言更少打字。

在为自己做类似的事情时,我只是创建了一些批处理文件。

例如,你可以提供一个py_go.bat来调用python theLongestPythonScriptNameInTheWorld.py

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM