使用Python或F#中的参数运行批处理文件

Ram*_*amy 3 python windows f# web-services batch-file

我搜索了网站,但我没有看到任何与我想要的相匹配的东西.我创建了一个使用我创建的Web服务的独立应用程序.要运行客户端我使用:

C:/scriptsdirecotry> "run-client.bat" param1 param2 param3 param4
Run Code Online (Sandbox Code Playgroud)

我将如何用Python或F#编写代码.看起来应该很简单,但我没有在网上看到任何与我正在寻找的相匹配的东西.

gra*_*bot 9

Python是类似的.

import os
os.system("run-client.bat param1 param2")
Run Code Online (Sandbox Code Playgroud)

如果需要异步行为或重定向标准流.

from subprocess import *
p = Popen(['run-client.bat', param1, param2], stdout=PIPE, stderr=PIPE)
output, errors = p.communicate()
p.wait() # wait for process to terminate
Run Code Online (Sandbox Code Playgroud)


Tom*_*cek 8

在F#中,您可以使用命名空间中的ProcessSystem.Diagnostics.运行命令的最简单方法应该是:

open System.Diagnostics
Process.Start("run-client.bat", "param1 param2")
Run Code Online (Sandbox Code Playgroud)

但是,如果需要提供更多参数,则可能需要先创建ProcessStartInfo对象(它允许您指定更多选项).