Shell脚本编程基础之shell脚本格式化输出printf
printf
可以让我们输出的结果更加整齐,可以按照一定的格式输出
[22:09:21 root@C8-3-55 ~]#type printf
printf 是 shell 内建
[22:14:46 root@C8-3-55 ~]#printf --help
printf: printf [-v var] 格式 [参数]
在 FORMAT 的控制下格式化并打印 ARGUMENTS 参数。
选项:
-v var 将输出赋值给 shell 变量 VAR 而不显示在标准输出上
FORMAT 是包含三种对象的字符串:简单地被拷贝到标准输出的普通字符;
被变换之后拷贝到标准输入的转义字符;以及每个都会影响到下个参数的打印的格式化声明。
在 printf(1) 中描述的标准控制声明之外,printf 解析:
%b 扩展对应参数中的反斜杠转义序列
%q 以可作为 shell 输入的格式引用参数
%(fmt)T 以 FMT 为供给 strftime(3) 的格式输出日期时间字符串
退出状态:
返回成功,除非使用了无效的选项或者写或赋值错误发生。
[22:35:30 root@C8-3-55 ~]#echo 1 2 3 4 5
1 2 3 4 5
[22:35:47 root@C8-3-55 ~]#printf 1 2 3 4 5
1
[22:36:39 root@C8-3-55 ~]#printf "%s\n" 1 2 3 4 5
1
2
3
4
5
[22:36:55 root@C8-3-55 ~]#printf "%f\n" 1 2 3 4 5
1.000000
2.000000
3.000000
4.000000
5.000000
[22:38:05 root@C8-3-55 ~]#printf "%.2f\n" 1 2 3 4 5
1.00
2.00
3.00
4.00
5.00
[22:38:16 root@C8-3-55 ~]#printf "[%s]" 1 2 3 4 5
[1][2][3][4][5]
[22:39:48 root@C8-3-55 ~]#printf "%s%s\n" 1 2 3 4 5 6
12
34
56
[22:50:25 root@C8-3-55 ~]#VAP="Welcom to BreJing!";VAR="One Word One Dream!";printf "\033[1;32m%s\n \033[0m" "$VAP" "$VAR"
Welcom to BreJing!
One Word One Dream!
* * *
胖并快乐着的死肥宅
* * *