2013-07-22 25 views
0

我正在嘗試編寫一個批處理文件,用於從我的公司使用的名爲Bomgar的程序中重新啓動服務,該服務允許我們的幫助臺技術人員遠程訪問員工計算機。我知道如何編寫一個重啓服務的批處理文件,問題是每個服務都有一個唯一的編號ID(例如; bomgar-ps-10000000-10000000),這是完全不同的機器對機器。有沒有辦法重新啓動名稱在「範圍」內的服務?以任何名稱中包含「bomgar-ps」的服務爲例。如何使用不同的名稱將批處理文件寫入retsart服務

真的不知道該如何處理。我們遇到的問題是,此服務偶爾無法啓動,並且員工在遇到問題時致電時,他們並不熟悉技術,因此大量時間浪費在嘗試將其引導到services.msc並手動重新啓動服務。

回答

0

試試這個,我用它來搜索打印後臺處理程序的名稱並重新啓動它。您應該能夠使用boomgar-ps替換spool,您甚至可以刪除SERVICE_NAME:部分。

@ECHO OFF 
>%TEMP%\~sc.log (sc queryex type= service state= all) 
for /F "tokens=1,* delims=: " %%I in ('type %TEMP%\~sc.log^|find "SERVICE_NAME: Spool"') do set scname=%%J 
ECHO RESTARTING %scname% 
sc stop %scname% 
sc start %scname% 
1

這也應該起作用。

@echo off 
set "servicename=" 
for /f "tokens=*" %%a in ('net start ^| find /i "bomgar-ps") do set "servicename=%%a" 
if defined servicename net stop "%servicename%" 
ping -n 3 localhost >nul 
net start "%servicename%" 
echo servicename "%servicename%" has attempted to restart 

如果你只是指導有人通過電話重新啓動該服務,那麼這將打印的名字到控制檯,在一個相當簡單的方式(添加/我到find命令,如果bomgar可以混合使用情況」

net start|find "bomgar" 
+0

感謝您的回覆,我會盡快在普通工作站上進行測試,但似乎可以自行工作。 –

相關問題