1.软文推荐

2.软文推荐

3.软文推荐

Linux常用命令printf命令模仿了C语言中的printf()函数。主要作用是输出文本,按照我们指定的格式输出文本,下面良许教程网为大家分享一下Linux常用命令—printf命令具体使用方法。

printf

格式化并输出结果。

目录

bash内建命令

GNU coreutils中的命令

内建命令 概要
 printf [-v var] format [arguments]
主要用途

格式化参数并输出。

选项
 -v var:将结果输出到变量var中而不是输出到标准输出。
参数

format:输出格式。

arguments:一到多个参数。

 转义序列:除了支持printf(1)和printf(3)的转义序列,内建printf还支持以下转义序列:
 ?
 %b       展开参数中的反斜杠转义字符。
 %q       将参数扩起以用作shell输入。
 %(fmt)T  根据strftime(3)中的转义字符来输出日期时间字符串。
返回值

返回状态为成功除非给出了非法选项、写错误、赋值错误。

例子
 # %-5s 格式为左对齐且宽度为5的字符串代替('-'表示左对齐),不使用则默认右对齐。
 # %-4.2f 格式为左对齐宽度为4,保留两位小数。
 ?
 printf "%-5s %-10s %-4s
" NO Name Mark
 printf "%-5s %-10s %-4.2f
" 01 Tom 90.3456
 printf "%-5s %-10s %-4.2f
" 02 Jack 89.2345
 printf "%-5s %-10s %-4.2f
" 03 Jeff 98.4323
 ?
 # 输出
 NO    Name       Mark
 01    Tom        90.35
 02    Jack       89.23
 03    Jeff       98.43
 ?
 ?
 # %b %q %(fmt)T 的例子。
 # see it again with a newline.
 printf "%s
" 'hello world'
 # 展开换行符,和上面的结果一样。
 printf "%b" 'hello world
'
 ?
 printf '%q
' 'a b c'
 # 输出
 a b c
 ?
 # %z为时区,%n为换行符。
 printf "%(%F %T %z%n)T"
 # 输出
 2019-09-10 01:48:07 +0000
注意

该命令是bash内建命令,相关的帮助信息请查看help命令。

外部命令 概要
 printf FORMAT [ARGUMENT]...
 printf OPTION
主要用途

格式化参数并输出。

选项
 --help 显示帮助信息并退出。
 --version 显示版本信息并退出。
参数

format:输出格式。

arguments:一到多个参数。

 在这里忽略了(%b %q),如果你安装的coreutils版本支持它们,那么请参考上面的例子。
 支持的转义序列:
 ?
 "          双引号
 \          反斜杠
           响铃
           退格
 c          截断输出
 e          退出
           翻页
 
          换行
 
          回车
 	          水平制表符
           竖直制表符
 NNN        八进制数 (1到3位数字)
 xHH        十六进制数 (1到2位数字)
 uHHHH      Unicode字符附加4位十六进制数字
 UHHHHHHHH  Unicode字符附加8位十六进制数字
 %%          百分号
 ?
 以及'diouxXfeEgGcs'中的一个结尾的C格式规范,将被转换为正确的类型并处理可变宽度。
例子
 # 使用 /usr/bin/printf 确保调用的不是内建命令。
 # 当然,在你关闭内建printf以及确认当前环境没有printf函数的情况下,可直接使用printf,详见末尾"注意"的链接。
 ?
 # 按行打印数组和关联数组的下标及值。
 ?
 # 声明数组可以不加'declare -a'或'local -a'(在函数内声明的局部变量)。
 arr=('line1' 'line2')
 /usr/bin/printf "%s
" ${!arr[@]}
 # 输出下标
 0
 1
 /usr/bin/printf "%s
" ${arr[@]}
 # 输出值
 line1
 line2
 ?
 #声明关联数组(也就是字典)必须加'declare -A'或'local -A'(在函数内声明的局部变量)。
 declare -A assoc_arr=(['key1']='value1' ['key2']='value2')
 /usr/bin/printf "%s
" ${!assoc_arr[@]}
 # 输出键。
 key2
 key1
 /usr/bin/printf "%s
" ${assoc_arr[@]}
 # 输出值。
 value2
 value1
返回值

返回状态为成功除非给出了非法选项等。

注意

该命令是GNU coreutils包中的命令,相关的帮助信息请查看man -s 1 printfinfo coreutils 'pwd invocation'

启动或关闭内建命令请查看enable命令,关于同名优先级的问题请查看builtin命令的例子部分的相关讨论。

我通过和bug-bash@gnu.org的交流,得到了关于这几个格式说明符%b %q %(fmt)T的解释:

printf(1)中的%b格式说明符是printf(3)支持的格式之外增加的一个POSIX特性。

%q和%T说明符是非标准的,并且不受所有独立实现的printf的支持。

更多细节请参考链接:

POSIX printf APPLICATION USAGE段落的第五节。

POSIX printf格式说明符 Description段落。

总结

至此关于Linux常用命令printf命令的使用方法分享结束,大家如果对printf命令的使用方法还有问题可以通过评论区将问题提交我们。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

本文来源:www.lxlinux.net/3032.html,若引用不当,请联系修改。

相关文章 8

1

Linux安装make工具 47秒前

Linux如何安装make?make命令是GNU的工程化编译工具,用于编译众多相互关联的源代码问价,以实现工程化的管理,提高开发效率,下面为大家...

3

云服务器厂商(云服务器厂商2021) 5分钟前

目录:1、哪家的云计算服务器好2、中国云计算服务器虚拟化厂商哪家好^3、有哪些云服务器比较好4、云服务器哪家好5、主流云服务器品牌...

4

通过源码编译升级Git 7分钟前

Git 是一个开源的分布式版本控制软件,用以有效、高速的处理从很小到非常大的项目版本管理。 Git 最初是由 Linus Torvalds 设计开发的,用于管...

5

晋中服务器(晋中门户网站) 10分钟前

目录:1、我是山西晋中市榆次区的,哪位可以告一下怎样设置我的ip地址2、为什么晋中胡乐麻将老是连接不上服务器了3、为什么晋中市安全...

6

管理数百个Kubernetes集群具体方法 12分钟前

运行和管理数百个Kubernetes集群需要什么?这就是本文分享的内容。下面,我们一起来看。 要点: 部署一个具备生产就绪所需所有依赖关系的...

7

Linux系统搭建svn服务器 15分钟前

svn即版本控制系统,svn是最流行的开源的版本控制系统,可用来管理任何类型的文件,其中包括程序源码。 安装步骤 1、检查系统是否已经...