awk 字符串函数
gsub(r,s) 在整个$0中用s替代r
gsub(r,s,t) 在整个t中s替代r
index(s,t) 返回s中字符串t的第一个位置
match(s,r) 测试s是否包含匹配r的字符串
split(s,a,fs) 在fs上将s分成序列a
sprint(fmt,exp) 返回经fmt格式化后的exp
sub(r,s) 用$0中最左边最长的字符串代替s
substr(s,p) 返回字符串s中从p开始的后缀部分
substr(s,p,n) 返回字符串s中从p开始长度为n的后缀部分
awk内置变量
ARGC 命令行参数个数
ARGV 命令行参数排列
ENVIRON 支持队列中系统环境变量的使用
FILENAME awk浏览的文件名
FNR 浏览文件的记录数
FS 设置输入域分隔符,等价于命令行-F选项
NF 浏览记录的域个数
NR 已读的记录数
OFS 输出域分隔符
ORS 输出记录分隔符
RS 控制记录分隔符
转义字符
\b 退格键
\t tab键
\f 走纸换页
\ddd 八进制值
\n 新行
\c 任意其他特殊字符,例如\\为反斜线符号
\r 回车键
printf修饰符
%c ASCII字符
%d 整数
%f 浮点数
%e 浮点数,科学记数法
%g awk决定使用那种浮点数转换e或者f
%o 八进制数
%s 字符串
%x 十六进制数
#以:为分隔符,左对齐10个字符,如果不够后边补零,打印第一个域和第7个域的字符串并且换行 cat /etc/passwd | awk ‘FS=":" {printf "%-10s %s\n",$1,$7}‘
时间: 2024-10-12 09:21:22