awk学习总结-printf格式化,模式

1 printf命令

printf "%s \n" 123 456
123
456
printf "%s %s %s\n" 123 456 789 098 123 567
123 456 789
098 123 567
运行命令输出如上。%s为格式替换符,用来处理后面的每一个参数。默认输出是不换行的。
其他格式替换符总结如下:
%s 字符串
%f 浮点格式
%d,%i 十进制整数
%o,不带正负号的八进制值
%x,不带正负号的十六进制值,使用a-f表示10-15.%X表示大写。
当带有数字时,如%12.3f,代表输出宽度为12个字符的宽度,右对齐,.3代表精度为小数点后3位。
当带有正负号时,+代表输出正数前面的正号。-代表左对齐。

2 printf动作 对于awk来说

  1. awk '{printf "%s %s/n",$1,$2}' file 指定的格式与被格式化的文本之间用逗号隔开。
  2. 格式替换符与被格式化的文本的数量需要一致。 
  3. 其他用法与printf命令一致。

awk -F: 'BEGIN{printf "%-15s\t%s\n","用户名","用户id"} {printf "%-15s\t%s\n",$1,$3}' /etc/passwd 
用户名      用户id
root            0
daemon          1
bin            2
sys            3
sync            4
games          5
man            6
lp              7
mail            8
news            9

评论

此博客中的热门博文

vmware esxi 安装运行与raid卡固件兼容性问题

awk 学习总结-变量/分隔符

bash学习随笔