您的位置:首页 > 其它

探索字符截取命令之---awk命令

2016-09-22 17:19 211 查看
这里给大家提个建议,在学习awk命令之前先掌握printf命令的用法。
printf '输出类型输出格式' 输出内容
输出类型:
%ns 输出字符串
%ni 输出整数
%m.nf 输出小数

输出格式:
-n 换行
-t tab键

简单的说,awk的出现就是为了弥补cut命令的不足,对于用空格制作的表格中,cut命令不再有用。
例如:查看磁盘使用率,用cut命令截取字符串就不起作用的



这时候,awk命令正好就弥补了cut命令在这方面的缺陷。
例如:截取根目录的使用率
df -h | grep "/dev/sda2" | awk '{printf $5}' | cut -d "%" -f 1




看明白了吗?
有人可能会说没有,那么没关系,我们下面好好的来讲一讲到底awk该怎么用
awk '条件1{动作1}条件2{动作2}...' 文件名
① 一般关系表达式做条件(BEGIN 和 END)

② > < >= <=等连接的条件

下面搞一个BEING和END的来练练手




END用法:




还有一个很重要的就是FS内置变量:
例如:利用awk命令截取/etc/passwd中user1的第一列和第五列的字符串
cat /etc/passwd | grep "/bin/bash" | grep -v "root" | grep "user1" \
| awk 'BEGIN{FS=":"}{printf $1 "\t" $3 "\n"}'




注意:awk自身还存在一个参数-F,用于指定分隔符。
例如:我们要打印/etc/passwd中的第一列,怎么操作?


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  命令 awk