日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

awk特殊用法

發布時間:2023/12/10 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 awk特殊用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、從固定格式中取出IP所在的class,并列出
例:
class A {
?? ?192.168.1.1
?? ?192.168.2.1
?? ?192.168.3.1
?? ?192.168.169.69
}
class B {
?? ?192.168.1.1
?? ?192.168.169.69
}
sed -nr '/\{/{:1;N;/\}/!b1;/192.168.169.69/s#^([^{]+).*#\1#p}' file

awk -vRS='class *.' '/192.168.169.69/{print s}{s=RT}' file

sed -nr '/class/h;/192.168.169.69/{x;s#([^{]+).*#\1#p}' file

awk '/class/{s=$1" "$2}/192.168.169.69/{print s}' file


二、awk數組應用域替換

用shadow文件中的密文部分替換passwd中的"x",生一個新passwd文件

awk?'BEGIN{OFS=FS=":"}?NR==FNR{a[$1]=$2}NR>FNR{$2=a[$1];print}'?/etc/shadow?/etc/passwd


NR==FNR,第一個文件shadow,以$1為下標,將$2的值賦給數組a
NR>FNR,第二個文件passwd,將文件shadow$2的值賦值給文件passwd



三、(next)使用

test.txt


gao?? ?
20?? ?
li?? ?
23?? ?
zhao?? ?
25?? ?
liu?? ?
19?? ?
zhang?? ?
28???


隔行顯示:

當記錄行號除2等于1的時候就跳過該行,不會運行{print NR,$0},再重新讀取下一行

awk?'NR%2==1{next}{print?NR,$0}'?test.txt二行合并: awk?'NR%2==1{T=$0;next}{print??T,"\t"$0}'?test.txt


其他用法匯總:

轉載于:https://blog.51cto.com/wushank/1703500

總結

以上是生活随笔為你收集整理的awk特殊用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。