我的问题与编写可能与xargs
. 我发现将迭代步骤和循环结合起来很麻烦,因为第二个可以变成命令。我必须重新发明轮子,所以:这方面存在什么?
while_do_it.sh
:
#! /bin/bash
while (( $# > 0 ))
do
echo "($1)"
shift
done
可以分为
while.sh
#! /bin/bash
command="$1"
shift
while (( $# > 0 ))
do
"$command" "$1"
shift
done
do_it.sh
#! /bin/bash
echo "($1)"
应用:
$ cat << EOF | xargs ./while.sh ./do_it.sh
foo
bar
qux
EOF
(Ctrl+D)
(foo)
(bar)
(qux)
如果您想使用 执行此操作
xargs
,请告诉它一次处理其输入一个单词:但是已经有一个 shell 结构可以一次处理一个命令行参数,即
for
循环: