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