printf
内容格式化输出
格式
printf [format] [输入内容]
format参数
%b:打印相关内容并解释其中反斜杠""的特殊字符 %q:以shell引用的格式打印相关内容,使其可以在标准输入中重用 %d:以带符号十进制的格式打印相关内容 %i:与%d相同 %o:以无符号八进制格式打印相关内容 %u:以无符号十进制格式打印相关内容 %x:以无符号小写十六进制打印相关内容 %X:以无符号大写十六进制打印相关内容 %f:以浮点数的格式解析并打印相关内容 %e:以双精度浮点数的格式打印相关内容 %E:与%e相同,只是字母用大写 %g:以%f或者%e格式打印相关内容 %G:以%f或者%e格式打印相关内容 %c:以字符的格式打印相关内容,并且只打印参数中的第一个字符 %s:以字符串的格式打印相关内容 %n:指定打印字符的个数 %%:表示打印一个字符的"%"
format转义符
" 打印"符号 NNN 用八进制的值表示一个ASCII字符 \ 打印符号 a 发出警告声 删除前一个字符 f 换页符,在某些实现中会清屏,有些会换行 换行符 不换行,光标在行首 制表符 v 垂直制表符 xHH 用十六进制的值表示一个ASCII字符
实例
# 打印shell字符,并且换行 printf "%s " shell # 打印shell字符的全部长度,并且换行 printf "%1s " shell # 打印shell字符左边开始的第一个字符,并且换行 printf "%1.1s " shell # 打印shell左边开始的第一个至第三个字符(如果指定的字符长度超过实际长度,则用空格补全多余部分),并且换行 printf "%5.2s " shell # 以浮点数打印类型打印字符 printf "%6.2f " 123.45678