可信网站身份验证 必须做吗,长沙建个网站要多少钱,手机怎么进入pc端,企业邮箱有什么用Linux三剑客awk知识 1. awk 介绍2. awk 语法3. 练习 1. awk 介绍
awk 是一门语言, 也是一个命令,Linux 有三剑客命令: grep/sed/awk三剑客的特长 grep 过滤内容sed 取行awk 取列
2. awk 语法
取列 取第一列文件($1): awk {print $1} 文件指定分隔符为文件: awk -F 指… Linux三剑客awk知识 1. awk 介绍2. awk 语法3. 练习 1. awk 介绍
awk 是一门语言, 也是一个命令,Linux 有三剑客命令: grep/sed/awk三剑客的特长 grep 过滤内容sed 取行awk 取列
2. awk 语法
取列 取第一列文件($1): awk {print $1} 文件指定分隔符为文件: awk -F 指定的分隔符 文件指定多分隔符: awk -F [/ #] {print $1,$2} 文件 取行: awk NR2 oldboy.txt过滤: awk /过滤的内容/ 文件
3. 练习 准备:创建一个文件, 并在只其中追加内容 [rootoldboyedu ~] echo oldboy oldgirl oldboy.txt
[rootoldboyedu ~] echo oldboy oldgirl oldboy.txt
[rootoldboyedu ~] cat oldboy.txt
oldboy oldgirl
oldboy oldgirl普通取列 取第一列[rootoldboyedu ~] awk {print $1} oldboy.txt
oldboy
oldboy取整行(搭配着grep可能更好用)[rootoldboyedu ~]# awk {print $0} oldboy.txt
oldboy oldgirl
oldboy oldgirl指定分隔符取列(-F) 取/etc/passwd的第1列: awk -F : {print $1} /etc/passwd取/etc/passwd的第2列: awk -F : {print $2} /etc/passwd取/etc/passwd的尾列: awk -F : {print $NF} /etc/passwd取/etc/passwd的倒数第2列: awk -F : {print $(NF-1)} /etc/passwd 同时输出多列 取/etc/passwd的第1列和第2列: awk -F : {print $1,$2} /etc/passwd取/etc/passwd的第1列、第3列和最后一列: awk -F : {print $1,$3,$NF} /etc/passwd 综合练习 从ip a或ifconfig结果中取出Ip地址 p a|grep 10.0.0|awk {print $2}|awk -F/ {print $1}或者ifconfig eth0|grep 10.0.0|awk {print $2}从ip a结果中取出Ip地址: ip a|awk -F [ /] NR9{print $3}取出stat /etc/hosts中的0644: stat /etc/hosts|awk -F [(/] NR4{print $2} 准备 [rootoldboyedu ~] seq 5 oldboy.txt
[rootoldboyedu ~] cat oldboy.txt
1
2
3
4
5取行练习 取第二行: awk NR2 oldboy.txt取第2-4行: awk NR2,NR4 oldboy.txt或awk NR1NR5 oldboy.txt或awk NR2NR4 oldboy.txt