![在批处理脚本中,将标准输出重定向到 nul 不起作用](https://linux22.com/image/1531529/%E5%9C%A8%E6%89%B9%E5%A4%84%E7%90%86%E8%84%9A%E6%9C%AC%E4%B8%AD%EF%BC%8C%E5%B0%86%E6%A0%87%E5%87%86%E8%BE%93%E5%87%BA%E9%87%8D%E5%AE%9A%E5%90%91%E5%88%B0%20nul%20%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我的情况
我有一个 Windows 计划任务,通过运行 来在用户登录时启动 Bamboo C:\_atlassian\Bamboo\BambooConsole.bat
。这可以正常工作,但会打开一个包含大量连续标准输出的命令提示符。我想阻止这种情况发生。
我尝试的解决方案
我没有C:\_atlassian\Bamboo\BambooConsole.bat
直接运行,而是创建了一个新文件BambooConsoleSilent.bat
来运行,这只是......
call C:\_atlassian\Bamboo\BambooConsole.bat > NUL
但是运行时它仍然会打印到控制台,如下所示。
问题
我如何确保控制台上没有任何内容打印?
BambooConsole.bat
或者更好的是,我可以不打开任何命令窗口就运行原始程序吗?
答案1
最小化运行.BAT
创建 .BAT 文件的快捷方式。要执行此操作,请右键单击文件,单击发送到、桌面(创建快捷方式)
右键单击快捷方式并选择属性
在运行:下拉菜单中,选择最小化
单击“确定”
或者您使用 VB 脚本
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "C:\_atlassian\Bamboo\BambooConsole.bat" & Chr(34), 0
Set WshShell = Nothing
另存为 .vbs 扩展名并放入任务计划程序