記錄:bat腳本批處理操作Windows服務(wù)(SC命令---安裝、開啟、配置、關(guān)閉 cmd命令行)
[重要通告]如您遇疑難雜癥,本站支持知識付費業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時間哦!
今天不知道腦子哪里搭錯線路了,想搞一個軟件的服務(wù)啟動,后來發(fā)現(xiàn)畢竟要在桌面右下角顯示,應(yīng)該需要兩個bat啟動,這樣就沒有啥意義了,那也得把相關(guān)的知識點記錄一下,后續(xù)想起來繼續(xù)搞的話,再來翻閱;
windows服務(wù)
一、cmd命令行---進(jìn)行Windows服務(wù)操作
1、安裝服務(wù)
sc create 服務(wù)名 binPath= "D:\laoliang\laoliangDemo.exe"
注:服務(wù)名:指創(chuàng)建的Windows服務(wù)名
?????? binPath:指Windows服務(wù)程序的路徑
2、配置服務(wù)
sc config 服務(wù)名 start=AUTO
注:start=AUTO? (自動)
????? start=DEMAND (手動)
????? start=DISABLED? (禁用)
3、開啟服務(wù)
net start 服務(wù)名
4、關(guān)閉服務(wù)
net stop 服務(wù)名
5、刪除服務(wù)
sc delete 服務(wù)名
二、第一種:bat批處理---進(jìn)行Windows服務(wù)操作
(新建一個txt文件,把后綴改成.bat文件)
1、創(chuàng)建、配置、開啟服務(wù)
@echo.服務(wù)啟動...... @echo off @sc create 服務(wù)名 binPath= "D:\laoliang\laoliangDemo.exe" @net start 服務(wù)名 @sc config 服務(wù)名 start= AUTO @echo off @echo.啟動完畢! @pause
2、關(guān)閉服務(wù)
@echo.服務(wù)關(guān)閉 @echo off @net stop 服務(wù)名 @echo off @echo.關(guān)閉結(jié)束! @pause
3、刪除服務(wù)(刪除前要關(guān)閉服務(wù))
@echo.服務(wù)刪除 @echo off @sc delete 服務(wù)名 @echo off @echo.刪除結(jié)束! @pause
二、第二種:bat批處理---進(jìn)行Windows服務(wù)操作
1、安裝腳本Install.bat
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\laoliangDemo.exe "D:\laoliang\laoliangDemo.exe" Net Start 服務(wù)名
sc config 服務(wù)名 start= auto pause
注:第一行:Window服務(wù)執(zhí)行程序的路徑
???? 第二行:啟動服務(wù)
???? 第三行:設(shè)置服務(wù)自動運行
???? 最后一行:暫停,可以查看運行信息
2、卸載腳本Uninstall.bat
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\laoliangDemo.exe /u "D:\laoliang\laoliangDemo.exe" pause
延伸閱讀:
一般來說,批處理文件處理相對路徑的時候,起始位置是bat文件所在的目錄,比如在D:\XX目錄下執(zhí)行bat文件,所有相對目錄的操作都會以D:\XX下執(zhí)行。
但是有些命令需要管理員權(quán)限,右鍵選擇以管理員身份運行時后,起始位置則為C:\Windows\system32,這時候往往不是我們所想要的,
一種解決解決辦法是在批處理的行首加一句"cd D:\XX”進(jìn)入該目錄,以修改其當(dāng)前位置,但這樣需要在批處理文件中加入絕對路徑,如果把bat文件移動到其它位置就無法使用了,此時一種更好的方式是用"cd /d %~dp0”代替"cd D:\XX”。
綜上所述,在寫bat文件的時候,不管是否需要用到管理員權(quán)限,最好在行首加一句"cd /d %~dp0",以統(tǒng)一文件的起始目錄。
例如,Auto.bat處于文件夾d:\laoliang\下,以下為Auto.bat的內(nèi)容
cd /d %~dp0
start laoliangDemo.exe
代表啟動“D:\laoliang\laoliangDemo.exe”這個程序
安裝的bat文件
@echo on color 2f mode con: cols=80 lines=25 @echo 請按任意鍵開始安裝后臺服務(wù)... pause cd /d %~dp0 Learn_Topshelf.exe install net start Stuff pause
卸載的bat文件
@echo on color 2f mode con: cols=80 lines=25 @echo 請按任意鍵開始卸載后臺服務(wù)... pause cd /d %~dp0 Learn_Topshelf.exe uninstall pause
更延伸的閱讀:
net stop "服務(wù)名稱" ? 停止服務(wù) net pause "服務(wù)名稱" ?暫停服務(wù) net start "服務(wù)名稱" ?啟動服務(wù) ----------分割線-------------- sc config "服務(wù)名稱" start= auto(自動) sc config "服務(wù)名稱" start= demand(手動) sc config "服務(wù)名稱" start= disabled(禁用) sc config "服務(wù)名稱" start= delayed-auto(自動(延遲啟動))
問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當(dāng)無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!