大家好,今天学习第二个数据处理的命令:awk命令,这个命令就非常强大了,相比之前那个cut命令,cut命令就显得比较low了。awk命令是一个非常强大的数据处理命令,支持条件判断,数组,循环等功能,与grep,sed被称为linux三 剑客。这个命令通常对数据进行列的提取。
语法:1、 awk '条件1 {执行动作} 条件2 {执行动作} ...' 文件名
2、awk [选项] '条件1 {执行动作} 条件2 {执行动作} ...' 文件名
特殊要点与举例说明:
printf #格式化输出,不会自动换行。
print #打印出内容,默认会自动换行
%s #代表字符串
\t #制表符
\n #换行符
例如: printf '%s\t%s\t%s\t%s\t%s\t%s\n' 1 2 3 4 5 6
awk的一些特殊要点与举例说明 :
NR #行号
$1 #代表第一列
$2 #代表第二列
$NF#代表最后一列
df -h | awk 'NR==4 {print $1}'
-F #指定分割符
awk -F":" '{print $1}' /etc/passwd
例如:
{printf "文 件系统使用率:"} {print $5}'
END #结束的时候 执行
例如:
df -h |grep -v 'Filesystem' | awk 'BEGIN {printf "文件系统使用情况:\n \n"} {printf $1}
{printf "文件系统使用率:"} {print $5} END {printf "一切正常 \n"}‘