AIX上awk语言的输出函数printf
AIX下awk语言的输出函数printf
输出函数printf:printf([format_control_flg],arg) printf修饰符 —————————————————————————————————————————————————— - 左对齐 Width 域的步长,0表示0步长 .prec 最大字符串长度,或小数点左边的位数 —————————————————————————————————————————————————— printf格式 ———————————————————————————————————————————————————— %c ASCII字符 %d 整数 %e 浮点数,科学计数法,如:12.3×10e4 %f 浮点数,如:123.45 %g awk决定使用哪种浮点数转换e或者f %o 八进制数 %s 字符串 %x 十六进制 ———————————————————————————————————————————————————— 1.字符转换 echo "65" | awk '{printf "%c\n",$0}' A awk 'BEGIN{ printf "%c %c %c %c %c#%c\n",92,93,94,95,96,97}' \ ] ^ _ `#a awk 'BEGIN{printf "%f\n",0}' 0.000000 awk 'BEGIN{printf "%f\n",1.0215}' 1.021500 2.格式化输出 逐行打印格式化数据: awk '{printf "%-15s %s\n",$1,$3}' grade.txt M.Tansley 48311 J.Lulu 48317 P.Bunny 48 J.Troll 4842 L.Tansley 4712 awk 'BEGIN{printf "Name \t\tS.Number\n"}{printf "%-15s %s\n",$1,$3}' grade.txt Name S.Number M.Tansley 48311 J.Lulu 48317 P.Bunny 48 J.Troll 4842 L.Tansley 4712 3.向一行awk命令传值 awk 命令变量 = 输入值 awk '{if ($5<AGE) print $0}' AGE=10 grade.txt M.Tansley 05/99 48311 Green 8 40 44 J.Lulu 06/99 48317 green 9 24 26
字符串屏蔽序列 ————————————————————————————— \b 退格键 \f 走纸换页 \n 换行 \r 回车键 \r tab键 \ddd 八进制 \c 任意其他字符 ————————————————————————————— awk 'BEGIN{print "May\tDay\n\nMay \104\141\171"}' May Day May Day \104:D的八进制ASCII码 \141:a的八进制ASCII码 \171:y的八进制ASCII码
--the end--