Shell中printf命令怎么用

85次阅读
没有评论

共计 1202 个字符,预计需要花费 4 分钟才能阅读完成。

自动写代码机器人,免费开通

丸趣 TV 小编给大家分享一下 Shell 中 printf 命令怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

printf 使用引用文本或空格分隔的参数,外面可以在 printf 中使用格式化字符串,还可以制定字符串的宽度、左右对齐方式等。默认 printf 不会像 echo 自动添加换行符,我们可以手动添加 \n。

printf 
命令的语法:

printf format-string [arguments...]

参数说明:

format-string: 为格式控制字符串
arguments: 为参数列表。
实例如下:

$ echo  Hello, Shell 
Hello, Shell
$ printf  Hello, Shell\n 
Hello, Shell
$

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

#!/bin/bash
printf  %-10s %-8s %-4s\n   姓名   性别   体重 kg
printf  %-10s %-8s %-4.2f\n   郭靖   男  66.1234
printf  %-10s %-8s %-4.2f\n   杨过   男  48.6543
printf  %-10s %-8s %-4.2f\n   郭芙   女  47.9876

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

姓名   性别   体重 kg
郭靖   男  66.12
杨过   男  48.65
郭芙   女  47.99

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

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

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

更多实例:

#!/bin/bash
# format-string 为双引号
printf  %d %s\n  1  abc 
#  单引号与双引号效果一样
printf  %d %s\n  1  abc 
#  没有引号也可以输出
printf %s abcdef
#  格式只指定了一个参数,但多出的参数仍然会按照该格式输出,format-string  被重用
printf %s abc def
printf  %s\n  abc def
printf  %s %s %s\n  a b c d e f g h i j
#  如果没有  arguments,那么  %s  用 NULL 代替,%d  用  0  代替
printf  %s and %d \n

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

1 abc
1 abc
abcdefabcdefabc
a b c
d e f
g h i
and 0

以上是“Shell 中 printf 命令怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-07发表,共计1202字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)