最近因為工作,每天早上需要在Windows上啟動reids、zookeeper、tomcat幾個程式,時間一長就感覺有點繁瑣,於是心血來潮想寫個指令碼來一鍵解決問題,經過一番百度,總結出了以下內容:
1、首先需要建立一個.bat檔案。可以先新建一個記事本,然後將字尾名改為「.bat」,例如「test.bat」。
2、然後編輯內容
@echo off
start cmd /k "cd/d D:\AA\service\redis &&redis-server.exe redis.windows.conf &&taskkill /f /t /im cmd.exe"
start cmd /k "cd/d D:\AA\service\zookeeper-3.4.8\bin &&zkServer.cmd &&taskkill /f /t /im cmd.exe"
start cmd /c "cd/d D:\tmp\tomcat8\bin &&startup.bat"
3、儲存此檔案,然後雙擊此檔案即可。
start 是用來啟動一個應用的,使用方式為:start 程式名
cmd /k 表示cmd後面的命令執行完後不關閉視窗
cmd /c 表示執行完cmd命令後關閉命令視窗
關於@echo off 命令:
echo off 關閉其他命令的顯示(但是不包括自身這條命令)
@echo off 關閉所有命令的顯示(@關閉其後命令的顯示)
或者檢視以下連結
https://blog.csdn.net/fly_as_tadpole/article/details/85177379
https://blog.csdn.net/lindaydk/article/details/6305641
有詳細解釋
如果需要關閉的話可以使用:
命令taskkill /f /t /im 加上要關閉的程式
@echo off
start cmd /k "taskkill /f /t /im java.exe &&taskkill /f /t /im cmd.exe"
此關閉方法對於一些單程序的程式有效,多程序的無效。
對於以上命令中的「&&taskkill /f /t /im cmd.exe」語句,本人也不太理解其作用,經過多次測試發現,是否加上此語句好像並沒有什麼影響。