我有一个计划任务,启动一个每小时运行robocopy的批处理脚本.每次运行时都会在桌面上弹出一个带有robocopy输出的窗口,我真的不想看到它.
我设法通过使计划的作业运行使窗口显示为最小化
cmd /c start /min mybat.bat
但这给了我一个新的命令窗口每小时.我对此感到惊讶,给定cmd / c“执行字符串指定的命令然后终止” – 我一定是误解了文档.
有没有办法在没有弹出cmd窗口的情况下运行批处理脚本?
您可以使用Windows脚本文件以静默方式运行它. “运行方法”允许您以不可见模式运行脚本.创建一个像这样的.vbs文件
原文链接:https://www.f2er.com/windows/370911.htmlDim WinScriptHost Set WinScriptHost = CreateObject("WScript.Shell") WinScriptHost.Run Chr(34) & "C:\Scheduled Jobs\mybat.bat" & Chr(34),0 Set WinScriptHost = Nothing
并安排它.此示例中的第二个参数设置窗口样式. 0表示“隐藏窗口”.
完整的Run method语法:
object.Run(strCommand,[intWindowStyle],[bWaitOnReturn])
参数:
> object:WshShell对象.> strCommand:表示要运行的命令行的字符串值.您必须包含要传递给可执行文件的任何参数.> intWindowStyle:可选.整数值,表示程序窗口的外观.请注意,并非所有程序都使用此信息.> bWaitOnReturn:可选.布尔值,指示脚本是否应等待程序完成执行,然后再继续执行脚本中的下一个语句.如果设置为true,则脚本执行将暂停,直到程序完成,Run将返回程序返回的任何错误代码.如果设置为false(默认值),Run方法在启动程序后立即返回,自动返回0(不被解释为错误代码).