国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > BAT > 正文

DOS中判斷進(jìn)程是否存在的方法

2020-07-26 20:18:19
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

檢測(cè)進(jìn)程是否存在,并做出預(yù)定動(dòng)作。

tasklist /nh>d:/tddown~1/1.txt

find /i "QQ.exe" d:/tddown~1/1.txt
if ERRORLEVEL 1 (echo qq.exe不存在) else (echo qq.ex存在)
------------第二個(gè)-----------
tasklist /nh|find /i "QQa.exe"
if ERRORLEVEL 1 (echo qqa.exe不存在) else (echo qqa.exe存在)


檢查電腦里有沒(méi)QQ.EXE進(jìn)程,有則自動(dòng)結(jié)束

a)、先用tasklist 輸入進(jìn)程列表給find ,讓find找出qq.exe進(jìn)程,如果找到,那執(zhí)行下面的結(jié)束操作,找不到就退出bat

@echo off
tasklist|find /i "qq.exe" ||exit
taskkill /im qq.exe /f

b)、把進(jìn)程列表放在A文檔里面然后再用FIND查找代碼:

@echo off
tasklist>C:/a.txt
find "QQ.exe" C:/a.txt&&taskkill /f /im "QQ.exe"

c)、如果不是要循環(huán)監(jiān)控的話(huà),直接taskkill。。。反正最終目的是不要有QQ進(jìn)程。


每隔20秒自動(dòng)檢測(cè)進(jìn)程列表,自動(dòng)關(guān)閉notepad.exe。

@echo off
:1
tasklist | find "notepad.exe" >>c:/notepad.luowei
if exist c:/notepad.luowei taskkill /f /im notepad.exe
ping 127.1 -n 20 >nul 2>nul
goto 1


檢測(cè)explorer.exe進(jìn)程

檢測(cè)explorer.exe進(jìn)程,發(fā)現(xiàn)有這個(gè)進(jìn)程就退出,沒(méi)有就從E盤(pán)復(fù)制一個(gè)到系統(tǒng)目錄,再運(yùn)行。
我系統(tǒng)經(jīng)常進(jìn)不去,發(fā)現(xiàn)就是被病毒發(fā)explorer.exe文件刪了。

tasklist|find /i "explorer.exe"||copy /y e:/drivers/explorer.exe %systemroot%/&&start /b explorer.exe


每30秒檢測(cè)一個(gè)進(jìn)程的運(yùn)行,如果不存在電腦重啟。

@echo off
rem 重啟應(yīng)該使用-r
tasklist|findstr /i "explorer.exe" ||shutdown -r -t 50
rem willsort斑竹說(shuō)過(guò),ping的第一條消息是不需要等待的,所以延時(shí)30秒,應(yīng)該用-n 31
ping 127.1 -n 31 >nul 2>nul
rem 不必使用循環(huán),call一下自己就行了
call %0


檢測(cè)系統(tǒng)的一個(gè)進(jìn)程是否存在的腳本, 如果不存在,就自動(dòng)關(guān)機(jī).

tasklist >tasklist.txt
rem 進(jìn)程名如 smss.exe
find /i tasklist.txt "進(jìn)程名"
if errorlevel 1 ((del /q tasklist.txt)&(goto end))
if errorlevel 0 ((del /q tasklist.txt)&(echo 有你想要的進(jìn)程)&pause&exit)
:end
shutdown -s -t 1

不過(guò)這樣只有這個(gè)bat運(yùn)行一次檢測(cè)一次,沒(méi)有實(shí)時(shí)監(jiān)控

用Goto 語(yǔ)句做 監(jiān)測(cè)

:start
tasklist >tasklist.txt
find /i tasklist.txt "Explorer.exe"
if errorlevel 1 ((del /q tasklist.txt)&(goto end))
if errorlevel 0 ((goto start))
:end
shutdown -s -t 50

這樣一來(lái) 如果Explorer.exe 進(jìn)程,存在, 就是死循環(huán).
直到 Explorer.exe 進(jìn)程結(jié)束, 就執(zhí)行 關(guān)機(jī)命令.
但這樣有個(gè)缺點(diǎn) CPU 100%


檢測(cè)多個(gè)特定進(jìn)程

我想實(shí)現(xiàn)這樣一個(gè)功能:用tasklist列出當(dāng)前進(jìn)程清單,然后用find來(lái)搜索進(jìn)程中是否含有1.exe,2.exe,3.exe......(假設(shè)啊)如果清單中含有其中一個(gè)就執(zhí)行某個(gè)操作。我想用FOR來(lái)實(shí)現(xiàn)循環(huán)可是怎么試也不行啊!!我是這樣試的:
tasklist | for %%j in (1.exe,2.exe,3.exe) do find "%%j" && goto :p
find是不是不能用for啊?請(qǐng)高人指點(diǎn)。
---------
tasklist | findstr "1.exe 2.exe 3.exe"&&goto :p
for不會(huì)接受傳遞自tasklist的數(shù)據(jù),它是打in來(lái)定義的
---------
@echo off
set 1.exe=被定義的程序
set 2.exe=被定義的程序
set 3.exe=被定義的程序


for /f "tokens=1" %%i in ('tasklist /NH') do (
if defined %%i echo %%i
)
pause>nul
---------


檢測(cè)和退出進(jìn)程問(wèn)題

A B 兩進(jìn)程存在,若A不存在,則退出B。每隔N秒循環(huán)檢測(cè)一次,退出B后,退出程序

tasklist|findstr /i "A.exe" ||(taskkill /im B.exe /t /f&exit)

列出當(dāng)前運(yùn)行的進(jìn)程,可自定義說(shuō)明內(nèi)容,手動(dòng)關(guān)閉進(jìn)程。
可改良后自動(dòng)判斷處理進(jìn)程。
 

@echo off
PATH=C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;C:/Program Files/HPQ/IAM/bin
title 進(jìn)程分析自定義結(jié)束進(jìn)程程序
echo 按任意鍵開(kāi)始分析
pause>nul
set space=
echo.
echo 程序分析如下:
echo =========================================================================
echo.
echo 進(jìn)程名稱(chēng) 進(jìn)程說(shuō)明
echo.
call tasklist.exe

::以下定義程序說(shuō)明,自己可以補(bǔ)充。
set System=『系統(tǒng)進(jìn)程』
set smss.exe=『系統(tǒng)進(jìn)程』調(diào)用對(duì)話(huà)管理子系統(tǒng)和負(fù)責(zé)操作你系統(tǒng)的對(duì)話(huà)
set csrss.exe=『系統(tǒng)進(jìn)程』管理Windows圖形相關(guān)任務(wù)
set winlogon.exe=『系統(tǒng)進(jìn)程』
set services.exe=『系統(tǒng)進(jìn)程』管理啟動(dòng)和停止服務(wù)
set lsass.exe=『系統(tǒng)進(jìn)程』用于本地安全和登陸策略
set svchost.exe=『系統(tǒng)進(jìn)程』用來(lái)運(yùn)行動(dòng)態(tài)鏈接庫(kù)dll文件
set ctfmon.exe=?提供語(yǔ)音識(shí)別、手寫(xiě)識(shí)別等
set conime.exe=?輸入法編輯器相關(guān)程序

::主程序
setlocal enabledelayedexpansion
for /f "tokens=1" %%i in ('tasklist /NH') do (
set str=%%i %space%
set str=!str:~0,20!
if defined %%i (echo !str! !%%i!) else echo !str! ‖根據(jù)進(jìn)程自已輸進(jìn)程名)
echo =========================================================================
echo 分析完畢...
:goto title
title 結(jié)束進(jìn)程
set /p run=請(qǐng)輸入要結(jié)束的程序名
::ntsd -c q -pn %run%
taskkill /f /t /im %run%
pause>nul 先分析PID和進(jìn)程。然后自定義結(jié)束


--------------------------------------------------------------------------------


當(dāng)使用 echo 命令時(shí),要顯示管道 (|) 或重定向字符(< 或 >),請(qǐng)?jiān)诠艿?nbsp;(|) 或重定向字符(例如,^>、^< 或 ^|)的前面使用脫字符 (^)。如果需要使用脫字符 (^),請(qǐng)鍵入兩個(gè)脫字符 (^^)。

||

Usage:
第一條命令 || 第二條命令 [|| 第三條命令...]

用這種方法可以同時(shí)執(zhí)行多條命令,當(dāng)碰到執(zhí)行正確的命令后將不執(zhí)行后面的命令,如果沒(méi)有出現(xiàn)正確的命令則一直執(zhí)行完所有命令;

Sample:

D:/TDDownload>dir *.txt||ren 1.txt 3.txt&&dir *.txt
驅(qū)動(dòng)器 D 中的卷是 Application
卷的序列號(hào)是 B445-F155

D:/TDDownload 的目錄

2008-01-26 15:35 229 1.txt
2008-01-26 15:35 229 2.txt
2008-01-26 15:35 229 第三只眼.txt
3 個(gè)文件 687 字節(jié)
0 個(gè)目錄 7,510,728,704 可用字節(jié)

D:/TDDownload>dir 3.txt||ren 1.txt 3.txt&&dir *.txt
驅(qū)動(dòng)器 D 中的卷是 Application
卷的序列號(hào)是 B445-F155

D:/TDDownload 的目錄

找不到文件
驅(qū)動(dòng)器 D 中的卷是 Application
卷的序列號(hào)是 B445-F155

D:/TDDownload 的目錄

2008-01-26 15:35 229 2.txt
2008-01-26 15:35 229 3.txt
2008-01-26 15:35 229 第三只眼.txt
3 個(gè)文件 687 字節(jié)
0 個(gè)目錄 7,510,728,704 可用字節(jié)

D:/TDDownload> 

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 临安市| 天台县| 金昌市| 于田县| 左云县| 荥经县| 泸定县| 乌兰察布市| 淮南市| 延川县| 射阳县| 尚志市| 建阳市| 胶州市| 即墨市| 横峰县| 灵璧县| 达拉特旗| 宜兰市| 安乡县| 抚顺市| 天峻县| 治县。| 鞍山市| 乾安县| 龙海市| 上犹县| 台山市| 扎囊县| 麟游县| 上蔡县| 卫辉市| 缙云县| 青河县| 大方县| 昭通市| 黄山市| 桃江县| 梁平县| 通榆县| 宁波市|