使批处理文件 Cmd 窗口保持打开 X 秒

使批处理文件 Cmd 窗口保持打开 X 秒

我正在服务器上运行批处理文件来转储 MySQL 数据库。

我想让 cmd 窗口保持打开状态,比如说 20 秒,然后关闭。这样,如果我手动运行它,我就可以看到它完成了任务。

我试过 Sleep 20,但看起来不起作用。文件如下:

echo CAMS MySQL database backup

"d:\program files\mysql\mysql server 5.1\bin\mysqldump" -u xxxxxxx -pxxxxxx --result-file="D:\MySQL_Data_Backups\cams\cams.%DATE:~10,4%-%DATE:~4,2%-%DATE:~7,2%.sql" cams

echo Done!
sleep 20

当我运行它时,它会关闭窗口而不显示最终的回声(“完成!”)。

如果我使用暂停而不是睡眠,它确实会显示最终的回声,但我希望窗口在延迟后关闭。

请问我做错了什么,您有什么建议吗?

答案1

用这个:

@echo off
echo done
ping 127.0.0.0 -n 1 -w 20000 > nul

-n 1 尝试连接一次 -w 20000 等待 20 秒

@echo off 只是为了有更漂亮的输出

另外一个是:

timeout 20

您甚至可以在倒计时至 0 之前停止此操作。

答案2

为了完整起见,这里使用经典 DOS 的老式方法选择命令。

ECHO waiting 5 seconds...
CHOICE /C:AB /D A /T 5 > NUL

相关内容