格式化并输出结果。
目录
内建命令
概要
1 | printf [-v var] format [arguments] |
主要用途
- 格式化参数并输出。
选项
1 | -v var:将结果输出到变量var中而不是输出到标准输出。 |
参数
format:输出格式。
arguments:一到多个参数。
1 | 转义序列:除了支持printf(1)和printf(3)的转义序列,内建printf还支持以下转义序列: |
返回值
返回状态为成功除非给出了非法选项、写错误、赋值错误。
例子
1 | %-5s 格式为左对齐且宽度为5的字符串代替('-'表示左对齐),不使用则默认右对齐。 |
注意
- 该命令是bash内建命令,相关的帮助信息请查看
help
命令。
外部命令
概要
1 | printf FORMAT [ARGUMENT]... |
主要用途
- 格式化参数并输出。
选项
1 | --help 显示帮助信息并退出。 |
参数
format:输出格式。
arguments:一到多个参数。
1 | 在这里忽略了(%b %q),如果你安装的coreutils版本支持它们,那么请参考上面的例子。 |
例子
1 | 使用 /usr/bin/printf 确保调用的不是内建命令。 |
返回值
返回状态为成功除非给出了非法选项等。
注意
该命令是
GNU coreutils
包中的命令,相关的帮助信息请查看man -s 1 printf
或info 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
段落。
- POSIX printf
评论