国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?

這篇具有很好參考價值的文章主要介紹了如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?

作者:西瓜程序猿
主頁傳送門:https://www.cnblogs.com/kimiliucn


前言

想要確保你的Windows服務即使在崩潰后也能自動重啟嗎?這篇文章教你如何用一個小巧的批處理腳本來實現(xiàn)這一點。教你怎么設置定時檢查,如果發(fā)現(xiàn)服務掛了,就立刻拉起來。跟著步驟做,讓你的服務穩(wěn)定運行不再是難題!


某一天,一個開發(fā)者寫了一個消息隊列消費端,部署到Windows服務上后,發(fā)現(xiàn)這個服務會不定時的無緣無故停止掉,既沒有日志也沒有任何事件能通知,就很詭異。在一個漆黑的夜晚,他找到了[西瓜程序猿],說幫他寫一個程序自動啟動運行Windows服務,這不就來了嘛!


一、檢測服務停止并自動開啟

1.1-思路

這里主要就是寫一個.bat批處理文件,然后循環(huán)監(jiān)控一個特定的Windows服務,如果服務停止了則嘗試重新進行開啟它,并且每隔N秒(自定義)檢測一次服務的狀態(tài)。然后需要一直運行著這個批處理文件。


2.2-源代碼

在自己電腦/服務器中新建一個【xxx.bat】文件,然后寫入以下代碼,bat文件可直接雙擊運行,寫好后可以自行運行看一下效果。

@echo off
rem 定義循環(huán)間隔時間和監(jiān)測的服務:
set secs=60
set srvname="服務名"
 
echo.
echo ========================================
echo ==         查詢計算機服務的狀態(tài),     ==
echo ==     每間隔%secs%秒種進行一次查詢,     ==
echo ==     如發(fā)現(xiàn)其停止,則立即啟動。     ==
echo ========================================
echo.
echo 此腳本監(jiān)測的服務是:%srvname%
echo.
 
if %srvname%. == . goto end
 
:chkit
set svrst=0
for /F "tokens=1* delims= " %%a in ('net start') do if /I "%%a %%b" == %srvname% set svrst=1
if %svrst% == 0 net start %srvname%
set svrst=
rem 下面的命令用于延時,否則可能會導致cpu單個核心滿載。
ping -n %secs% 127.0.0.1 > nul
goto chkit
 
:end


注意:
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


運行成功截圖(如果出現(xiàn)亂碼也沒關(guān)系):
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


二、自動運行.bat批處理文件

我們知道上面檢測服務是否已停止的.bat批處理文件需要一直運行著,也就是只要將黑窗口關(guān)閉調(diào),程序就停止了。所以我們需要將這個.bat文件放在后臺一直保持運行著。[西瓜程序猿]這邊以部署在【任務計劃程序】作為例子,讓.bat文件每1分鐘自動執(zhí)行一次。然后是在Windows Server服務器上執(zhí)行(PC電腦上操作有細微區(qū)別)。


2.1-前期準備

前期要進行如下配置,不然可能會報"操作員或系統(tǒng)管理員拒絕了請求。(Ox800710EO)"等錯誤(如果不配置可能不會執(zhí)行:定時任務未配置在一個有效的組內(nèi),或者定時任務所在用戶組用戶無效或無權(quán)限),配置好后最好重啟一下電腦/服務器,不然可能導致無法生效。
(1)首先輸入【win+R鍵,然后輸入 gpedit.msc 】或者直接搜索【本地安全策略】。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


(2)點擊【本地策略——>用戶權(quán)限分配——>允許本地登錄】右擊,然后點擊【屬性】。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?
然后點擊【添加用戶或組】,在輸入對象名稱來選擇輸入框中輸入【Administrator】,然后點擊【檢查名稱】,可能會多出一些前綴或者下劃線,這個沒關(guān)系說明檢測到了。然后點擊【確認】即可。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


(3)點擊【本地策略——>用戶權(quán)限分配——>作為批處理文件登錄】右擊,然后點擊【屬性】,然后步驟同上即可。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?

(4)點擊【本地策略——>安全選項——>域控制器:允許服務器操作者計劃任務】右擊,然后點擊【屬性】

如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


然后選擇【已啟用】,最后點擊【確定】即可。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


2.2-創(chuàng)建任務執(zhí)行程序

(1)打開【任務計劃程序】。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


(2)然后點擊【創(chuàng)建任務】,在【常規(guī)】Tab選項中,輸入【名稱】,勾選【不管用戶是否登錄都要運行】,勾選【使用最高權(quán)限運行】,不然可能導致沒有權(quán)限執(zhí)行該任務。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


(3)在【觸發(fā)器】Tab選項中,點擊【新建】來創(chuàng)建一個觸發(fā)器,也就是在什么時間來執(zhí)行這個任務。[西瓜程序猿]以每1分鐘來執(zhí)行,持續(xù)時間為無限期。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


(4)在【操作】Tab選項中,點擊【新建】來創(chuàng)建一個觸發(fā)器,也就是要執(zhí)行的具體任務。[西瓜程序猿]以執(zhí)行.bat文件作為例子。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?


(5)在【條件】Tab選項中,取消勾選【只有在計算機使用交流電源時才啟動此任務】。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?

(6)在【設置】Tab選項中,如果此任務已經(jīng)運行,以下規(guī)則適用【停止現(xiàn)有實例】(根據(jù)自己需求進行選擇即可),最后點擊【確認】任務就創(chuàng)建好了。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?

(6)最后等待啟動執(zhí)行即可,也可以手動點擊【運行】。
如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?文章來源地址http://www.zghlxwxcb.cn/news/detail-748529.html

到了這里,關(guān)于如何檢測Windows服務停止后自動啟動?自動運行.bat批處理文件?的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關(guān)文章

  • 【解決】mysql本地計算機上的MySQL服務啟動后停止。某些服務在未由其他服務或程序使用時將自動停止。啟動好后,數(shù)據(jù)1146問題,找不到表(windows版本,免安裝版本)

    環(huán)境:mysql5.7.13(免安裝版本) 第一個問題:mysql本地計算機上的MySQL服務啟動后停止 解決方式一:重啟服務器(以前成功過,可能是Windows服務器的原因) 解決方式二: 1.清空 data 文件夾,記得備份 2.cmd 進入mysql的bin目錄 執(zhí)行初始化命令:mysqld --initialize 等待幾秒鐘,沒報錯就

    2024年02月15日
    瀏覽(17)
  • windows運行.bat文件且設置為開機啟動,不顯示窗口

    windows運行.bat文件且設置為開機啟動,不顯示窗口

    步驟1;為 腳本 設置桌面快捷方式 步驟2: 將生成的快捷方式復制/剪切到以下文件夾 C:ProgramDataMicrosoftWindowsStart MenuProgramsStartup 這樣就能開機自動啟動了,愉快使用吧! 創(chuàng)建vbs文件

    2024年02月12日
    瀏覽(14)
  • C#寫windows服務,實現(xiàn)把檢測軟件崩潰工具寫成服務 自動運行

    一、打開Visual Studio,創(chuàng)建項目-Windows 服務(.NET Framework) 二、點擊Service.cs 點擊切換到代碼視圖 三、點擊Service.cs 在Service.cs設計視圖中右擊添加安裝程序 四、會出現(xiàn)一個serviceProcessInstaller1和serviceInstaller1兩個組件, serviceInstaller1屬性中的ServiceName是服務名可以修改成自己的 ,把

    2024年02月02日
    瀏覽(18)
  • kettle—bat文件Windows任務計劃程序自動運行定時設置

    kettle—bat文件Windows任務計劃程序自動運行定時設置

    1.用kettle新建一個作業(yè) 2.把作業(yè)保存到你電腦上的任意文件夾內(nèi) 3.新建一個bat文件(新建一個文本文檔,后綴改為bat,右鍵編輯打開) 4.只需要改這三個地方,別的地方不用動 1.這個是你電腦kettle的安裝路徑 2.這個是你kettle作業(yè)的路徑 3.這個是你kettle日志的路徑(自己新建一個

    2024年02月01日
    瀏覽(27)
  • windows服務器下java程序健康檢測及假死崩潰后自動重啟應用、開機自動啟動

    windows服務器下java程序健康檢測及假死崩潰后自動重啟應用、開機自動啟動

    前兩天由于項目需要,一個windows上的批處理任務(kitchen.bat),需要接到mq的消息通知后執(zhí)行,為了快速實現(xiàn)這里我們通過springboot寫了一個jar程序,用于接收mq的消息,并調(diào)用bat文件。 調(diào)用windows的批處理腳本bat,并支持傳參 可根據(jù)配置設置并發(fā),同時消費多個mq消息調(diào)用多個

    2024年02月12日
    瀏覽(17)
  • Windows環(huán)境使用bat腳本啟動Java服務

    Java項目一般會被打包成jar后啟動,在windows系統(tǒng)中可以通過終端窗口cmd啟動jar包,即在jar包所在的目錄中打開cmd,或在cmd中進入到jar包目錄,執(zhí)行如下命令: 在bat腳本中執(zhí)行java服務,命令與cmd中類似,可能會出現(xiàn)在啟動之前,該服務要使用的端口已經(jīng)被占用,或者說該服務已

    2024年02月11日
    瀏覽(37)
  • Windows系統(tǒng)中使用bat腳本啟動git bash 并運行指定命令 - 懶人一鍵git更新

    Windows系統(tǒng)中使用bat腳本啟動git bash 并運行指定命令 - 懶人一鍵git更新

    雙擊\\\"autoGitPull.bat\\\",自動打開git bash,并cd到項目,逐個git pull,保留git bash窗口展示進度。 其中,start \\\"\\\" \\\"D:xx.exe\\\"的第一個\\\"\\\"是空運行,防止報錯找不到命令-c 另外,屁股的\\\";bash\\\"是強制git bash別關(guān)窗口 ?

    2024年02月13日
    瀏覽(103)
  • windows彈出交互式服務檢測一鍵取消bat腳本

    windows彈出交互式服務檢測一鍵取消bat腳本

    新建一個bat文件,將下面的腳本拷貝進去,保存,雙擊即可 禁用服務:重啟電腦的時候不會啟動 停止服務:立即停止服務,馬上生效的

    2024年02月09日
    瀏覽(20)
  • 【問題】本地計算機上的MySQL服務啟動后停止。某些服務在未有其他服務或程序使用時將自動停止。

    【問題】本地計算機上的MySQL服務啟動后停止。某些服務在未有其他服務或程序使用時將自動停止。

    在服務中啟動數(shù)據(jù)庫時,發(fā)生如上錯誤。借鑒網(wǎng)友的經(jīng)驗。 ?。?shù)據(jù)會全部消失, 操作之前一定保存好數(shù)據(jù) ?? 1.將data文件夾內(nèi)的內(nèi)容全部刪除,在bin文件夾下打開命令行,輸入mysqld --initialize。 2.等待一段時間后輸入net start mysql重新啟動該服務 但發(fā)生如下錯誤。無法重新啟

    2024年02月11日
    瀏覽(22)
  • windows下frp服務如何實現(xiàn)開機自動啟動?

    上篇教程我們學習到如何搭建frp實現(xiàn)內(nèi)網(wǎng)穿透,但是呢結(jié)尾的客戶端方面有個小問題,那就是客戶端得用命令提示符啟動,一旦關(guān)閉了命令提示符窗口,frp服務就會停止不可用了。 如何解決這個問題呢?所以,今天就來學習一下如何隱藏這個窗口,以及如何設置開機自動啟動

    2024年02月11日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包