printf命令手册

共 1873字,需浏览 4分钟

 ·

2021-09-27 19:23

printf:格式和打印数据

功能描述

printf命令模仿了C语言中printf( )函数。

printf命令的作用是按照我们指定的格式输出文本。默认 printf 不会像 echo 一样自动添加换行符,需要我们手动添加 \n进行换行。

命令语法

 printf  [选项] [文本1] [文本2] ...

选项含义

选项含义
\a警告字符,通常为ASCII的BEL字符
\n换行
\r回车
\0ddd表示1到3位的八进制值字符
\ddd表示1到3位数八进制值的字符。仅在格式字符串中有效

参考实例

(1)字符串输出:

[root@cnLinuxer ~]# printf "Hello, World\n"
Hello, World

(2)使用格式替换符 "%s" 格式化输出:

[root@cnLinuxer ~]# printf "%s\n" a b c d
a
b
c
d

[root@cnLinuxer ~]# printf "%s %s \n" a b c d
a b
c d

[root@cnLinuxer ~]# printf "%s %s %s \n" a b c d e f
a b c
d e f

(3)接下来,我们用一个脚本来体现printf 的强大功能:

[root@cnLinuxer ~]# vim printf.sh
printf "%-10s %-8s %-4s\n" 姓名 性别 体重kg
printf "%-10s %-8s %-4.2f\n" 张三 男 59.5278  
printf "%-10s %-8s %-4.2f\n" 李四 男 62.7323
printf "%-10s %-8s %-4.2f\n" 王五 女 49.8767

脚本执行结果,如下所示:

[root@cnLinuxer ~]# sh printf.sh
姓名     性别   体重kg
张三     男      59.53
李四     男      62.73
王五     女      49.88

%s %c %d %f都是格式替代符

%-10s 指一个宽度为10个字符(-表示左对齐,没有则表示右对齐),任何字符都会被显示在10个字符宽的字符内,如果不足则自动以空格填充,超过也会将内容全部显示出来。

%-4.2f 指格式化为小数,其中.2指保留2位小数。

(4)给传入的a,b,c,d 添加一对“括号”

[root@cnLinuxer ~]# printf "( %s )" a b c d;echo ""
( a )( b )( c )( d )


Linux命令查询工具

有收获,点个在看 

浏览 20
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报