当我们在使用一些没有图形化界面的软件时(例如Redis、Nginx等)经常会遇到启动或重启等常用操作,但是由于没有图形化界面,每次都要打开cmd手动输入dos命令,非常麻烦。我们可以把常用的命令直接封装为一个bat文件,这样在以后使用的时候只需要运行bat文件即可。
这里给大家提供一个相对来说比较通用的模板:

@ECHO off
cmd /c "cd /d D:\Nginx-1.24.0 && nginx -s reload && ECHO "重启完毕,此窗口将于2秒后自动关闭"&& timeout /t 2"

参数解释:

@ECHO off:不显示已输入的命令;

cmd /c :执行引号内的命令,并且执行完毕后关闭窗口。如果使用 'cmd /k' 则执行完毕后保留窗口,需要使用'EXIT'命令关闭窗口。即:

cmd /k " '需要执行的命令' && EXIT"

cd /d:进入指定目录。cd后一定要加/d否则无法执行后面的命令

&&:连接多条命令

ECHO:打印语句,相当于

System.out.println("hello, world");

注意如果中文乱码需要更改bat文件的编码格式与cmd的编码格式相对应,默认为ANSI,使用GBK或UTF-8会乱码。

timeout /t: 延迟指定秒数。timeout /t 2表示延迟两秒。