BAT文件执行后保持CMD打开

问题描述 投票:0回答:12

我有一个这样的bat文件:

ipconfig

这会将 IP 信息打印到屏幕上,但在用户读取该信息之前,CMD 会自行关闭。

我相信 CMD 假定脚本已完成,因此它会关闭。

脚本完成后如何保持CMD打开?

file batch-file cmd
12个回答
338
投票

pause
放在 .BAT 文件的末尾。


239
投票

根据您运行命令的方式,您可以将

/k
放在
cmd
之后以保持窗口打开。

cmd /k my_script.bat

只需将

cmd /k
添加到批处理文件的末尾也可以。感谢 Luigi D'Amico,他在下面的评论中发布了相关内容。


75
投票

只需在末尾添加

@pause
即可。

示例:

@echo off
ipconfig
@pause

或者您也可以使用:

cmd /k ipconfig

27
投票

当 .bat 文件启动时 不是从命令行中启动(例如双击)。

echo The echoed text
@pause

echo The echoed text
pause

echo The echoed text
cmd /k

echo The echoed text & pause


11
投票

在(Windows 7)末尾添加

pause
对我来说不起作用
但在我的命令前面添加
cmd /k
确实有效。

示例:

cmd /k gradlew cleanEclipse

6
投票

start cmd /k
为我创造了魔法。我实际上用它来准备 cordovaphonegap 应用程序,它运行命令,显示结果并等待用户关闭它。下面是简单的例子

start cmd /k echo Hello, World!

我在我的案例中使用了什么

start cmd /k cordova prepare

更新

您甚至可以使用

为其指定标题

start "My Title" echo Hello, World!


2
投票

在 Windows 中,将“& Pause”添加到文件中命令的末尾。


1
投票

如果您在命令行中启动脚本,请添加

exit /b
以保持 CMD 打开


1
投票

我也很困惑为什么我们要在开头添加

cmd
,我想知道是否必须先打开命令提示符。 您需要做的是输入完整的命令以及
cmd /k
。例如,假设您的批处理文件名是“my_command.bat”,它运行命令
javac my_code.java
,那么批处理文件中的代码应该是:

cmd /k javac my_code.java

所以基本上不需要在当前文件夹打开命令提示符并键入上述命令,而是可以直接将此代码保存在批处理文件中并直接执行。


0
投票
javac -d C:\xxx\lib\ -classpath C:\xxx\lib\ *.java

cmd cd C:\xxx\yourbat.bat

第二个命令使你的cmd窗口不关闭。 重要的是你仍然可以输入新命令


0
投票

作为旁注,当直接从 Windows 中的搜索栏运行命令时,这也适用。

例如直接运行

ipconfig
命令退出后会直接关闭cmd窗口。

使用

cmd \k <command>
不会 - 这就是我找到这个答案时想要做的。

它还有一个额外的优点,那就是始终识别您尝试运行的命令。例如。从搜索栏运行

echo hello world
不起作用,因为这不是命令,但是
cmd \k echo hello world
工作得很好。


0
投票

将“call”放在我的最后一个命令前面,然后是“cmd /k”命令对我有用。

call mvn clean package
cmd /k
© www.soinside.com 2019 - 2024. All rights reserved.