Ale*_*lls 4 bash xargs echo for
假设我有一个列表/数组:
list=(a b c)
Run Code Online (Sandbox Code Playgroud)
如何将每个元素回显到 xargs?就像是:
for v in list; do echo v; done; | xargs
Run Code Online (Sandbox Code Playgroud)
有没有更简洁的方法?
printf '%s\n' "${list[@]}" | xargs
Run Code Online (Sandbox Code Playgroud)
这会将 的每个元素打印list
在自己的行上,并且以换行符分隔的列表将传递给xargs
。
"${list[@]}"
将扩展到list
. printf
如果给定的参数多于格式化字符串中的占位符,则将重用其格式化字符串。