最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Shell腳本模擬多線程功能分享

 更新時間:2014年11月28日 15:18:14   投稿:junjie  
這篇文章主要介紹了Shell腳本模擬多線程功能分享,本文直接給出實現(xiàn)代碼,代碼中有詳細的注釋,需要的朋友可以參考下

復制代碼 代碼如下:

#!/bin/bash
function pinghost {
ping $1 -c 1 -w 10 |grep rtt|cut -d “/” -f6
}
tmp_fifofile=”/tmp/$.fifo”   # 腳本運行的當前進程ID號作為文件名
mkfifo $tmp_fifofile         # 新建一個隨機fifo管道文件
exec 6<>$tmp_fifofile         # 定義文件描述符6指向這個fifo管道文件
rm $tmp_fifofile
thread=10
for ((i=0;i<$thread;i++));do   # for循環(huán) 往 fifo管道文件中寫入10個空行
echo
done >&6
while read domain
do
read -u6                  # 從文件描述符6中讀取行(實際指向fifo管道)
{
pinghost ${domain};      # 執(zhí)行pinghost函數(shù)
echo >&6                      # 再次往fifo管道文件中寫入一個空行。
}&                                  # 放到后臺執(zhí)行
done</home/miotour/ip.txt
wait                          #因為之前的進程都是后臺執(zhí)行,因此要有wait來等待所有的進程都執(zhí)行完畢后才算整個腳本跑完。
exec 6>&-                #刪除文件描述符6
exit 0

說明:{} 這部分語句被放入后臺作為一個子進程執(zhí)行,這部分幾乎是同時完成的,當fifo中10個空行讀完后 while循環(huán)
繼續(xù)等待 read 中讀取fifo數(shù)據(jù),當后臺的10個子進程后,按次序排隊往fifo輸入空行,這樣fifo中又有了數(shù)據(jù),for語句繼續(xù)執(zhí)行。

相關文章

最新評論

平遥县| 叙永县| 闵行区| 泽普县| 常宁市| 驻马店市| 台州市| 新龙县| 龙门县| 湟源县| 简阳市| 湖北省| 阳谷县| 龙游县| 天津市| 松溪县| 都安| 永靖县| 南溪县| 东乌珠穆沁旗| 海盐县| 永仁县| 临海市| 肥东县| 江达县| 公主岭市| 水富县| 庄河市| 施秉县| 芦溪县| 天柱县| 尖扎县| 黄山市| 临潭县| 白朗县| 永仁县| 油尖旺区| 理塘县| 宜章县| 屯门区| 楚雄市|