printf
文本处理
用法
printf '[format]' [args]像 C 的 printf 那样按格式串生成文本;它不会自己加换行,还会在参数没用完时把格式从头再走一遍。
常用选项
| 选项 | 含义 |
|---|---|
| %s | Insert a string |
| %d | Insert a whole number |
| %.2f | A number with exactly two decimals |
| %-10s | A string padded to ten columns, left aligned |
| \n | A newline; printf never adds one for you |
示例
printf '%s\t%d\n' apple 5One tab-separated line.
printf '%.2f\n' 3.14159Rounds to two decimals.
printf '%s\n' a b cThe format repeats, so this prints three lines.
它们本来就是用管道串起来用的。串三条往往比让一条命令做完所有事更短。
怎么看
- 方括号 [ ] 表示这部分可以不写。
- 省略号 … 表示可以写多个。
- 选项区分大小写——有些命令里 -r 和 -R 不是一回事。
常见问题
Q. printf 是做什么的?
像 C 的 printf 那样按格式串生成文本;它不会自己加换行,还会在参数没用完时把格式从头再走一遍。
Q. 怎么写?
printf '[format]' [args] —— 方括号表示可以省略的部分。
Q. 值得记的选项有几个?
这里列了 5 个,完整列表在 man printf。这条命令属于文本处理。
相关命令
man 手册: man printf