我正在尝试学习 Bash 中的命令并遇到了这些示例。为什么添加 a 会'.'
阻止序列号被打印?
这是我想要的行为,但我在手册页上找不到任何内容。
printf "%.sI" $(seq 10)
Run Code Online (Sandbox Code Playgroud)
IIIIIIIIII
printf "%sI" $(seq 10)
Run Code Online (Sandbox Code Playgroud)
1I2I3I4I5I6I7I8I9I10I
Hax*_*iel 15
printf
允许您指定甚至适用于字符串的精度:
printf(3) 联机帮助页中的相关语句:
可选精度,形式为句点 ('.') 后跟可选的十进制数字字符串。
如果精度仅以“.”形式给出,或者精度为负,则精度将被视为零。
这给出了...从字符串中打印的最大字符数
s
和S
转换。
Soprintf '%.s'
等价于printf '%.0s'
,它会抑制来自后续字符串参数的输出。