Pao*_*olo 11 bash printf xargs seq
我正在尝试使用printf和seq打印以下模式:
0000
0001
0002
0003
Run Code Online (Sandbox Code Playgroud)
我的问题是我曾经使用过:
seq 0 10 | xargs printf %04d
Run Code Online (Sandbox Code Playgroud)
我的所有输出格式化为相同的行likeo:
0000000100020003
Run Code Online (Sandbox Code Playgroud)
我仍然无法使用xargs.在这种情况下如何正确使用它?
Jon*_*oni 22
printf如果您不要求,该命令不会输出换行符.尝试:
seq 0 10 | xargs printf '%04d\n'
Run Code Online (Sandbox Code Playgroud)
请注意,您可以使用just seq,因为它允许指定printf样式的格式:
seq -f %04g 0 10
Run Code Online (Sandbox Code Playgroud)
Ken*_*ent 12
你不需要printf或xargs.seq有-f选项:
kent$ seq -f '%04G' 10
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
Run Code Online (Sandbox Code Playgroud)
seq 0 10 | xargs printf "%04d\n"
Run Code Online (Sandbox Code Playgroud)
最初的问题是缺少末尾的换行符printf。只需添加换行符即可解决问题。