您的位置:首页 > 其它

awk命令详解

2015-04-08 13:38 232 查看
简介

awk逐行读入文本,以空格为默认分隔符切片,对各部分分析处理

使用方法

awk 'pattern {action}' filename
awk 'pattern {action} pattern {action}...' filename


awk -F ":"  'BEGIN {print "name,shell"} {print $1","$7} END{print "myself,/bin/bash"}


awk -F : '/root/ [{print $0}]' /etc/passwd


awk内置变量

ARGC               命令行参数个数
ARGV               命令行参数排列
FILENAME           awk浏览的文件名
FS                 设置输入域分隔符,等价于命令行 -F选项
NF                 浏览记录的域的个数
NR                 已读的记录数
OFS                输出域分隔符
ORS                输出记录分隔符
RS                 控制记录分隔符


awk编程

{action}中可以定义变量,action中可以有多条语句,各语句之间以";"划分

awk -F : '{count++;print $1","count} END{print count}' /etc/passwd


awk -F : '{printf("%s,%d\n",$1,++count)} END{print count}' /etc/passwd


条件语句:

就是把一个完整的if elseif else当做一个action来写

{ if(expression) {statement;statement;... ...} }

{ if(expression) {statement;} else {statement2;} }

{ if(expression) {statement1;} else if(expression1) {statement2;} else {statement3;} }


其他语句支持:while、do/while、for、break、continue
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: