我可以在批处理文件的末尾放置什么命令来防止在文件执行后自动关闭控制台?
当前回答
如果您希望cmd.exe不关闭,并能够继续键入,请使用cmd /k
只是觉得有必要澄清/k是做什么的(来自windows网站):
/k:执行string指定的命令并继续执行。
因此,在bat文件的末尾没有后续命令的cmd /k将保持cmd.exe窗口打开以供进一步使用。
另一方面,在批处理文件末尾的暂停将简单地暂停进程并在第一次按下按钮时终止cmd.exe
其他回答
简单,添加cmd到你的最后一行蝙蝠,但是!如果您重置或清除系统路径,则必须以完整路径启动CMD,例如:
%windir%\system32\cmd.exe
例如,我有一个bat文件来重置jdk到旧版本,就像这样:
PATH=C:\Program Files\Java\jdk1.6.0_45\bin;C:\apache-ant-1.7.1\bin
SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_45
%windir%\system32\cmd.exe
因为我重置了系统路径,所以我必须运行完整路径的cmd,否则系统找不到cmd.exe,它将无法运行cmd,只是关闭窗口,你看不到错误信息。
可能性1: 只需要创建2个.bat文件并写入第一个文件:
start <filename> // name of 2nd batch file
exit
批处理文件2是最后不会关闭的文件。 所以现在当你打开第nr1批时,它会开始第2批,然后自闭。 当第二个结束时,它不会完全关闭(只要你不把出口放在最后)
可能性2: 批文件1:
call <filename>
cls
echo End of file
pause
<any code you want>
当第二个文件结束时,它将再次继续文件1并输出剩余的部分。有了它,您甚至可以创建错误处理程序。如果nrr .1崩溃,它会进入nrr .2并显示出来
将cmd.exe作为新行添加到要执行的代码下面:
c:\Python27\python D:\code\simple_http_server.py
cmd.exe
如果您正在使用Maven,并且希望跳过输入并防止关闭控制台以查看结果,那么您需要在脚本中使用CALL命令,而不仅仅是'mvn clean install'。
像这样将关闭控制台
ECHO This is the wrong exemple
mvn clean install
pause
像这样控制台将保持打开状态
ECHO This is the right exemple
CALL mvn clean install
pause
如果你不使用CALL命令,两个过去的例子都不能工作。因为由于某种原因,cmd在调用另一个批处理文件(在本例中是mvn)时的默认行为本质上是用它替换当前进程,而不像调用.exe
添加暂停(如果你不希望任何其他显示Add) > null它应该看起来像:@echo offtitle niceecho hellopause >nulall你将看到的是“hello”
推荐文章
- 无法在Windows上从/usr/local/ssl/openssl.cnf加载配置信息
- 使iTerm以与其他操作系统相同的方式翻译“元键”
- 用Windows任务调度器运行批处理文件
- GIT克隆在windows中跨本地文件系统回购
- 如何合并2 JSON对象从2个文件使用jq?
- 如何运行一个PowerShell脚本而不显示窗口?
- PowerShell:仅为单个命令设置环境变量
- 为什么这个Windows批处理文件只执行第一行,而在命令shell中执行所有三行?
- 如何将文件内容读入批处理文件中的变量?
- 如何触发命令行PHP脚本的XDebug分析器?
- 环境变量存储在Windows注册表的哪里?
- 有一个好的Valgrind Windows的替代品吗?
- Maven命令行如何指向特定的settings.xml为单个命令?
- Windows和Linux上的c++编译:ifdef开关
- 如何验证批处理文件中是否存在一个文件?