濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > 批處理程序中的“多線程”處理代碼

批處理程序中的“多線程”處理代碼

熱門標(biāo)簽:徐州客服外呼系統(tǒng)排名 聯(lián)通400電話去哪里申請(qǐng)啊 軟通動(dòng)力地圖標(biāo)注專員 綿陽外呼線路 DOTA地圖標(biāo)注app 五華銷售外呼管理系統(tǒng)電話 汕頭外呼crm系統(tǒng) 湖州手機(jī)外呼系統(tǒng) 百度地圖標(biāo)注地址有什么影響

如下內(nèi)容將簡單舉例,在WINDOWS下使用批處理做多進(jìn)程并發(fā),以達(dá)到“多線程”的效果。

  例:需要PING 192.168.0.1到192.168.0.254的所有IP地址,并將是否能PING通的結(jié)果輸出到log.txt

  實(shí)現(xiàn)如下:

rem 主程序.bat,只需一行代碼,調(diào)用checkip.bat,經(jīng)測(cè)試,CPU2.6G MEM1G可并發(fā)40個(gè)左右的進(jìn)程

復(fù)制代碼 代碼如下:

for /l %%i in (1,1,254) do (start /min cmd /c checkip.bat 192.168.0.%%i)

rem checkip.bat內(nèi)容如下:

復(fù)制代碼 代碼如下:

ping %1 -n 1
if %errorlevel%==0 (echo %1 alive>>log.txt) else (echo %1 dead>>log.txt)

根據(jù)以上資料,我自己進(jìn)行了修改,只需要一個(gè)主程序就能執(zhí)行代碼:
程序進(jìn)化

復(fù)制代碼 代碼如下:

@echo off
if "%1"=="" (for /l %%a in (1,1,100) do (start /min cmd /c %0 10.120.6.%%aping 127.0.0.1 -n 1>nul))
if not "%1"=="" (ping -a %1 -n 1|find "reply" /iecho alive %1>>LogIP.txt||echo dead %1>>LogIP.txt)

為了使代碼過長,方便閱讀,我分成了兩行,其實(shí)一行就可以完成的。你可以自己修改,直接在cmd窗口運(yùn)行的語句,如果你寫不出來,可以再來問我。
程序知識(shí)點(diǎn)說明:

1.判斷參數(shù)是否為空
2.使用start命令,請(qǐng)注意和goto和call的區(qū)別
3.使用ping做延遲
4.使用find命令判斷IP是否開機(jī)狀態(tài)并記錄到日志中
5.提示信息禁止輸出。

程序再進(jìn)化
為了每次執(zhí)行后清空日志文件,修改代碼如下:

復(fù)制代碼 代碼如下:

@echo off
if "%1"=="" (
if exist "logip.txt" del LogIp.txt
for /l %%a in (1,1,100) do (start /min cmd /c %0 10.120.6.%%aping 127.0.0.1 -n 1 1>nul))
if not "%1"=="" (ping -a %1 -n 1|find "reply" /iecho alive %1>>LogIP.txt||echo dead %1>>LogIP.txt)

當(dāng)然,如果你想使用兩個(gè)bat文件,可以直接把兩行代碼分別寫在兩個(gè)文件中,每個(gè)文件寫一行也可以。

說明:

1.在for語句的最后,有ping 127.0.0.1 -n 1 1>nul,-n 1表示ping1次,后面的1>nul表示正常信息重定向禁止輸出,具體博客內(nèi)容其他文章句柄重定向。
2.語句if exist "logip.txt" del LogIp.txt可以使用 echo [%date% %time%]>LogIp.txt 來代替,它們兩句的作用是相同的,具體使用就看個(gè)人用法了
以上是自己的一些心得,怕自己忘記,記錄在此。

補(bǔ)充參考 jack_Meng

標(biāo)簽:邯鄲 廣東 新余 內(nèi)江 棗莊 克拉瑪依 濟(jì)南 清遠(yuǎn)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《批處理程序中的“多線程”處理代碼》,本文關(guān)鍵詞  批處理,程序,中的,多線程,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《批處理程序中的“多線程”處理代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于批處理程序中的“多線程”處理代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    文成县| 扶余县| 光泽县| 黄平县| 普安县| 宣恩县| 鄂托克旗| 五台县| 大悟县| 西城区| 旌德县| 绥宁县| 岱山县| 元阳县| 凤台县| 宜章县| 保靖县| 日喀则市| 汪清县| 根河市| 安新县| 扎兰屯市| 浦江县| 历史| 莎车县| 新源县| 巫溪县| 淄博市| 南投市| 长汀县| 绥德县| 穆棱市| 马尔康县| 农安县| 革吉县| 井冈山市| 塔城市| 黎平县| 建始县| 水富县| 彝良县|