当前位置: 首页 > 知识库问答 >
问题:

批处理文件执行后如何自动关闭cmd窗口?

牟慎之
2023-03-14

我正在运行一个包含以下两行的批处理文件:

start C:\Users\Yiwei\Downloads\putty.exe -load "MathCS-labMachine1"
"C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow

这个批处理文件用于运行Xming应用程序,然后运行PuTTY应用程序,这样我就可以通过SSH进入我大学的计算机实验室。

但是,如果我运行此程序并且Xming尚未打开,则一旦我退出PuTTY终端,cmd窗口将保持打开状态。只有当我已经运行Xming时,cmd窗口才会在我关闭PuTTY终端时关闭。我尝试将exit添加到批处理文件的最后一行,但无济于事。

共有3个答案

邬博涉
2023-03-14

要立即关闭当前cmd窗口,只需添加为最后一个命令/行:

move nul 2>&0

尝试将nul移动到任何地方并将stderr重定向到stdin将导致当前窗口cmd.exe被关闭

这与关闭bat或使用<code>转到:EOF

我甚至打开了一个问题来寻找解释行为的答案。那会是个bug吗?执行:move nul 2时立即关闭当前cmd窗口

暨弘懿
2023-03-14

通常情况下,批处理文件的末尾会有一行代码,该行只会显示退出。如果要确保文件已运行且DOS窗口在2秒后关闭,可以添加以下行:

timeout 2 >nul
exit

但是,如果批处理文件打开另一个窗口,则< code>exit命令将不起作用,因为当第二个窗口打开时,旧的DOS窗口也会显示出来。

解决方案:例如,有一个名为BgInfo的很棒的免费小程序,它将显示有关您计算机的所有信息。假设它在名为C:\BgInfo的目录中,要使用/popup开关从批处理文件中运行它并在它仍然运行时关闭DOS窗口,请使用:

start "" "C:\BgInfo\BgInfo.exe" /popup
exit
李文轩
2023-03-14

修改批处理文件启动两个程序,而不是启动一个程序并调用另一个程序

start C:\Users\Yiwei\Downloads\putty.exe -load "MathCS-labMachine1"
start "" "C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow

如果您这样运行它,则在启动程序后不会有CMD窗口保持打开状态。

 类似资料:
  • 我想编写一个批处理文件,该文件将按给定顺序执行以下操作: 打开命令 注意:执行命令后不应关闭cmd窗口。 我试过启动命令。exe/k“cd\

  • 问题内容: 我想从Java程序执行批处理文件。 我正在使用以下命令。 但是问题是我想提供一个相对路径而不是绝对路径,以便我可以在任何组件上部署该Java项目。 项目的目录结构如下: 我想从“解析器”目录中的“ Main.java”文件中运行“ util”目录中的“ Server.bat”文件。 问题答案: 当Java运行时,您可以将Runtime.exec()与相对路径一起使用,相对方式是相对于当

  • 标题说明了一切:我想用命令启动cmd窗口,但我想隐藏窗口 这就是我想要的,但是cmd窗口仍然是打开的,关闭后我也结束了这个命令。我想在后台运行cmd.exe。可能吗?

  • 场景是:您在窗口(a)中,单击按钮/链接启动打印过程,然后打开一个新窗口(B),其中包含要打印的内容,打印对话立即显示,如果您单击窗口(B)的取消按钮,那么您应该可以再次打印,但当您单击窗口(B)的打印按钮打印时,您可以打印,但窗口(a)的按钮不能再次继续打印。给我一些解决方案…!!!在chrome,Firefox和internet explorer上工作

  • 在一个类中,在一个函数中,我创建了一个Tkinter画布。这个函数正在被另一个类调用,我希望Tkinter窗口弹出30秒,然后自动关闭。我有电话 但我犯了个错误 elf.tk.call('destroy',self.w)\u tkinter.TclError:无法调用“destroy”命令:应用程序已被销毁 那我怎么能让它自己关上呢?