濮阳杆衣贸易有限公司

主頁 > 知識庫 > 分享awk變量$0的妙用

分享awk變量$0的妙用

熱門標(biāo)簽:江蘇云電銷機(jī)器人公司 打電話機(jī)器人接我是他的秘書 揭陽智能電話機(jī)器人推薦 如果做線上地圖標(biāo)注 客服外呼系統(tǒng)怎么樣 百度地圖標(biāo)注錯了有責(zé)任嗎 地圖標(biāo)注員都是年輕人 華鋒e路航港口地圖標(biāo)注 河南信譽(yù)好的不封卡電話外呼系統(tǒng)

腳本內(nèi)容:

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

#!/bin/bash
for ip in `cat ip.lst`
do
./ssh.exp $ip > /dev/null 2>1
done
NK=`awk 'BEGIN{bs=4000000}/access/{if($1>bs){nk=NR-1;print nk}}' exp.log`
for nnk in $NK
do
awk -F"[@|']" 'NR=='"$nnk"' {print $2}' exp.log
done

然后又發(fā)現(xiàn)awk中$0的鬼怪。于是進(jìn)一步簡化成了這個樣子:

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

#!/bin/bash
for ip in
`cat ip.lst`
do
./ssh.exp $ip > /dev/null 2>1
done
awk 'BEGIN{bs=4000000}/access/{if($1>bs)print x};{x=$0}' exp.log|awk -F"[@|']" '{print $2}'

終于算是圓了自己用一句話搞定它的夢。yeah~ 不過對這個原理還是不很明白。因為print x;x=$0出來是上一行,但print $0則是本行。why? 網(wǎng)上對打印前一行還提出另一個寫法,就看的更莫名其妙了:
awk '/regex/{print (x==""?"":x)};{x=$0}' $1

而打印后一行是這樣:
awk '/regex/{getline;print}' $1

不過這畢竟是恰好上下行而已,如果是要前幾行的,還是要靠NR運(yùn)算了。

因為awk的流式處理,print x;x=$0,這個時候的x要等到下一行時才print出來。

標(biāo)簽:邵陽 許昌 巴彥淖爾 淘寶邀評 赤峰 婁底 馬鞍山 金昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《分享awk變量$0的妙用》,本文關(guān)鍵詞  分享,awk,變量,的,妙用,分享,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《分享awk變量$0的妙用》相關(guān)的同類信息!
  • 本頁收集關(guān)于分享awk變量$0的妙用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    菏泽市| 库尔勒市| 同仁县| 墨脱县| 永寿县| 佛冈县| 金乡县| 奇台县| 五大连池市| 自治县| 双城市| 河南省| 维西| 无极县| 连平县| 宁晋县| 徐州市| 营山县| 岑巩县| 东丽区| 瑞安市| 昭觉县| 玛纳斯县| 平乐县| 宝应县| 余江县| 东乡县| 蒲江县| 莱西市| 新宁县| 驻马店市| 惠安县| 昌图县| 安新县| 宜城市| 讷河市| 景泰县| 徐闻县| 九江县| 威信县| 天台县|