将几个结尾的 Bash 参数作为 for 循环中的命令
Taking the several ending Bash arguments as commands in a for loop
我只是想尝试使名为 loop
的 for 循环脚本更简单一些,或者至少是自定义一些。我希望它在语法中...
loop <start> <end> <command>
我是这样做的,但我不知道如何将命令参数传递到循环中。我知道如何做到这一点的唯一方法是 bash -c
它将选项后的第一个参数作为命令,而 $@ 将接受所有内容。我需要它来忽略前两个参数。这两个之后的所有内容都将在循环中执行。
所以即使是这样的东西也行。
loop 1 1000 for ((i=1; i<1000; i++)); do touch some_dir; done
这是我所拥有的,到目前为止运行良好,显然没有命令。
for ((i=; i<; i++)); do echo "yaaaa!"; done;
我想你想要这个?
function loop
{
local START=
local END=
shift 2
for LOOP in `seq $START $END`
do
"$@"
done
}
然后您可以将其用作:
loop 1 10 echo "yaaaa!"
我只是想尝试使名为 loop
的 for 循环脚本更简单一些,或者至少是自定义一些。我希望它在语法中...
loop <start> <end> <command>
我是这样做的,但我不知道如何将命令参数传递到循环中。我知道如何做到这一点的唯一方法是 bash -c
它将选项后的第一个参数作为命令,而 $@ 将接受所有内容。我需要它来忽略前两个参数。这两个之后的所有内容都将在循环中执行。
所以即使是这样的东西也行。
loop 1 1000 for ((i=1; i<1000; i++)); do touch some_dir; done
这是我所拥有的,到目前为止运行良好,显然没有命令。
for ((i=; i<; i++)); do echo "yaaaa!"; done;
我想你想要这个?
function loop
{
local START=
local END=
shift 2
for LOOP in `seq $START $END`
do
"$@"
done
}
然后您可以将其用作:
loop 1 10 echo "yaaaa!"