bat、dos控制多個后台程序啟動


目錄:

一、背景

二、需求分析

三、實現方法

四、常見問題

==================================================================

正文:

一、背景

有一個windows項目,需要打開多個cmd.exe窗口來啟動眾多子服務。每次手工打開cmd.exe窗口,並執行相同的命令行,不僅效率低下,而且長時間沒有啟動忘了步驟,還容易出錯。

 

二、需求分析

此時需要一個一鍵啟動的方式來完成操作。

1、windows下,bat腳本可以執行編排好的命令。

2、一個bat腳本對應一個cmd.exe窗口,就考慮編寫多個bat腳本,再由一個總bat腳本來調用。

3、ping命令可以用了拉開啟動的時間間隔。

ping  -n   6   127.0.0.1  >nul 

 

 

三、實現方法

1、新建5個分散腳本:r0.bat、r1.bat、r2.bat、r3.bat、r4.bat

分散腳本中的內容可以改成你自己的命令。腳本數量也可以修改。

r0.bat中

mongod --port 65521 --dbpath d:/mongodb_data --auth

  

r1.bat中

ping -n 6 127.0.0.1 >nul
workon xunfeng_py2 && python -V && python web.py

  

r2.bat中

ping -n 7 127.0.0.1 >nul
workon xunfeng_py2 && python -V && python aider/aider.py

  

r3.bat中

ping -n 8 127.0.0.1 >nul
workon xunfeng_py2 && python -V && python nascan/nascan.py

  

r4.bat中

ping -n 9 127.0.0.1 >nul
workon xunfeng_py2 && python -V && python vulscan/vulscan.py

 

2、新建總控制bat:run.bat

run.bat中:

start r0.bat
start r1.bat
start r2.bat
start r3.bat
start r4.bat

::說明,以上bat是在做如下事項。各個腳本中ping的目的是在拉開啟動時間間隔。
::start mongod --port 65521 --dbpath d:/mongodb_data --auth
::workon xunfeng_py2 && python -V && python web.py
::workon xunfeng_py2 && python -V && python aider/aider.py
::workon xunfeng_py2 && python -V && python nascan/nascan.py
::workon xunfeng_py2 && python -V && python vulscan/vulscan.py

 

3、測試

雙擊run.bat查看運行效果。

結果啟動了5個cmd.exe窗口,服務運行成功。

 

四、常見問題

1、Unix文件和windows文件有區別

如果啟動總bat不能執行所有命令,有可能是Unix格式的文件,用notepad打開,雙擊右下角Unix的標記,修改為windows格式的文件。

 

2、dos命令連續執行命令連接符

&&  表示前一個命令執行成功后執行后一個命令

workon xunfeng_py2 && python -V && python web.py

 

3、bat啟動新cmd.exe

start  默認啟動一個新的cmd.exe。

::     雙冒號無空格,表示bat中的注釋。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM