脚本 - 多个终端中的多个程序

时间:2017-03-30 17:53:39

标签: bash shell loops execution gnome-terminal

我制作了一个脚本,这样我就可以通过编写

轻松地在不同的终端执行多个程序
./script.sh (numberofprogramstype1) (numberofprogramstype2)

问题是它只执行每种类型中的一种,即使我根据给定的参数循环它。这是我的代码:

gcc program1.c -lpthread

for i in {1..$1}
do
       gnome-terminal -e ./a.out
done

gcc program2.c -lpthread

for i in {1..$2}
do
        gnome-terminal -e ./a.out
done

为什么会发生这种情况,我该如何解决?

1 个答案:

答案 0 :(得分:1)

支撑扩展在参数扩展之前发生;你只能在其中使用硬编码的数字。改为使用C风格的for循环。

# {1..$1}
for ((i=1;i<=$1;i++)); do
   ...