Win7 runas命令:如何捕获运行的命令输出?

时间:2009-09-22 21:13:09

标签: runas

我正在尝试(在Windows 7下)使用runas命令停止然后重新启动服务。 (Win7要求admin privs执行此操作;因此使用runas。)

停止服务工作正常,但启动它没有。这是我用来停止服务的命令:

runas /user:myDomain\myUserId "net stop serviceName"

这是启动服务的命令:

runas /user:myDomain\myUserId "net start serviceName"

当我运行上面的命令时,另一个命令窗口打开,但在我看到任何内容之前闪烁;因此我不知道出了什么问题。

所以,我的问题是:当通过runas运行时,我如何从net start命令捕获stdout和/或stderr?我尝试过只使用重定向,但只是获取一个空文件。另一种解决方案是通过runas打开窗口,使子任务保持打开状态。

提前致谢。

2 个答案:

答案 0 :(得分:10)

使用要运行的命令启动cmd.exe,并指定将输出写入文件。

runas / user:myDomain \ myUserId“cmd.exe / c net stop serviceName> output.txt”

您可以使用2>用于从净停止输出错误。

答案 1 :(得分:4)

此外,如果您不想打扰输出文件,可以使用cmd.exe / k而不是/ c来启动命令,它将为您打开会话窗口。如果你只是想快速浏览,可能会更容易/更快。