使用批处理文件(.bat)启动多个CMD窗口并执行命令

由于每次启动本机的mongodb和kafka,都需要进入相关目录进行启动,操作相对繁琐,于是想起了批处理来帮忙一键启动。
在桌面新建一个txt文件,改后缀名为.bat,并加上下面的代码。

cd /d D:\env-java\mongodb-win32-x86_64-windows-5.0.5\bin
start cmd /k mongod -f ../conf/mongod.conf --auth
choice /t 3 /d y
cd /d D:\env-java\kafka_2.13-3.5.1
start cmd /k bin\windows\zookeeper-server-start.bat config\zookeeper.properties
choice /t 3 /d y
start cmd /k bin\windows\kafka-server-start.bat config\server.properties

运行流程:

  • 点击bat文件后先执行第一个语句进入到相应的目录。
  • 执行第二个命令:新打开一个cmd窗口,执行mongod -f ../conf/mongod.conf --auth
  • 执行第三个命令:等待3秒。
  • 以此类推…
    代码结尾不加pause的原因是:执行.bat程序会打开一个窗口,执行完.bat程序后关闭当前窗口,因为不需要该窗口保留着,免得手动关闭。
  1. start 用来启动一个应用。
  2. cmd /k 表示启动一个CMD且不关闭cmd。
  3. start cmd /k “命令1 & 命令2 & 命令3” (无论前面命令是否成功, 后面都会执行)。
  4. start cmd /k "命令1 && 命令2 && 命令3 " (仅当前面命令成功时, 才执行后面,一般用这个)。
  5. start cmd /k “命令1 || 命令2 || 命令3” (仅当前面命令失败时. 才执行后面)。
  6. start cmd /c 启动一个CMD且关闭cmd。
  7. cd /d 表示运行到该目录下。
  8. 使用choice命令来延时3秒,也可用ping命令作延时,ping 127.0.0.1 -n 5。
    在命令窗口输入choice/? 以查看更多choice命令的用法。
    启动kafka和mongod用/k的原因:
    新开启一个cmd窗口运行mongod -f ../conf/mongod.conf --auth,服务启动后要一直保持开启状态,如果用/c关掉cmd窗口这样就关掉了服务。

你可能感兴趣的:(Kafka,batch命令)