shell脚本-格式化输出 printf

格式

printf “指定的格式” “文本1” ”文本2“……

在这里插入图片描述

常用格式替换符

在这里插入图片描述
说明:%s 中的数字代表此替换符中的输出字符宽度,不足补空格,默认是右对齐,%-10s表示10个字符宽,- 表示左对齐

常用转义字符

\a 警告字符,通常为ASCII的BEL字符
\b 后退
\f 换页
\n 换行
\r 回车
\t 水平制表符
\v 垂直制表符
\ 表示\本身

范例:

[root@server02 ~]# printf "%s\n" 1 2 3 4
1
2
3
4
printf "%f\n" 1 2 3 4
1.000000
2.000000
3.000000
4.000000

#.2f 表示保留两位小数

[root@server02 ~]# printf "%.2f\n" 1 2 3 4
1.00
2.00
3.00
4.00
[root@server02 ~]# printf "(%s)" 1 2 3 4;echo ""
(1)(2)(3)(4)
[root@server02 ~]# printf " (%s) " 1 2 3 4;echo ""
 (1)  (2)  (3)  (4)
[root@server02 ~]# printf "%s %s\n" 1 2 3 4
1 2
3 4
[root@server02 ~]# printf "%s %s %s\n" 1 2 3 4
1 2 3
4

#%-10s 表示宽度10个字符,左对齐

 printf "%-10s %-10s %-4s %s \n" 姓名 性别 年龄 体重 小明 男 20 70 小红 女 18 50
姓名     性别     年龄 体重
小明     男        20   70
小红     女        18   50

#将十进制的17转换成16进制数

[root@server02 ~]# printf "%X" 17
11

#将十六进制C转换成十进制

[root@server02 ~]# printf "%d\n" 0xC
12
[root@server02 ~]# VAR="Shan Hai Edu";printf "\033[31m%s\033[0m\n" $VAR
Shan
Hai
Edu
[root@server02 ~]# VAR="Shan Hai Edu";printf "\033[31m%s\033[0m\n" "$VAR"
Shan Hai Edu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值