linux/shell脚本
我写了一个程序,它为2个变量生成参数索引。假设a和b是5步中的一步。像这样,我必须为23个变量做。所以我不想写23个for循环来运行,我怎样才能使它成为一个for循环,这对于所有23个变量都是通用的。我希望它可以用数组完成,但我不知道如何通过程序实现它。 你能帮帮我吗 节目:linux/shell脚本,linux,Linux,我写了一个程序,它为2个变量生成参数索引。假设a和b是5步中的一步。像这样,我必须为23个变量做。所以我不想写23个for循环来运行,我怎样才能使它成为一个for循环,这对于所有23个变量都是通用的。我希望它可以用数组完成,但我不知道如何通过程序实现它。 你能帮帮我吗 节目: int z, p float a, b float a0, an, s, a1, b0, bn, b1 str var s=5; a0=1; an=10; b0=8; bn=13 // s= steps, a0,
int z, p
float a, b
float a0, an, s, a1, b0, bn, b1
str var
s=5; a0=1; an=10; b0=8; bn=13 // s= steps, a0, b0= initial value, an,bn=final value
z=0
a1=(an-a0)/s
b1=(bn-b0)/s
for (a=(a1+a0);a<=an;a=a+a1)
for (b=(b1+b0);b<=bn;b=b+b1)
echo {z} {a} {b} -format "%25s" >> /home/genesis/genesis-2.3/genesis/Scripts/kinetikit/dhanu19.txt
z=z+1
end
end
output : dhanu19.txt
0 2.8 9
1 2.8 10
2 2.8 11
3 2.8 12
4 2.8 13
5 4.6 9
6 4.6 10
7 4.6 11
8 4.6 12
9 4.6 13
10 6.4 9
11 6.4 10
12 6.4 11
13 6.4 12
14 6.4 13
15 8.2 9
16 8.2 10
17 8.2 11
18 8.2 12
19 8.2 13
20 10 9
21 10 10
22 10 11
23 10 12
24 10 13
intz,p
浮动a、b
浮子a0、an、s、a1、b0、bn、b1
str-var
s=5;a0=1;an=10;b0=8;bn=13//s=steps,a0,b0=初始值,an,bn=最终值
z=0
a1=(an-a0)/s
b1=(bn-b0)/s
对于(a=(a1+a0);a/home/genesis/genesis-2.3/genesis/Scripts/kinetikit/dhanu19.txt
z=z+1
结束
结束
输出:dhanu19.txt
0 2.8 9
1 2.8 10
2 2.8 11
3 2.8 12
4 2.8 13
5 4.6 9
6 4.6 10
7 4.6 11
8 4.6 12
9 4.6 13
10 6.4 9
11 6.4 10
12 6.4 11
13 6.4 12
14 6.4 13
15 8.2 9
16 8.2 10
17 8.2 11
18 8.2 12
19 8.2 13
20 10 9
21 10 10
22 10 11
23 10 12
24 10 13
您指的是哪个Shell?声明数组在zsh、bash等之间有一些语法上的差异…您是否考虑过编写脚本或程序来为您编写脚本?生成Shell脚本,然后运行它们有时可能是解决问题的一个强大方法。让我们假设您为l编写23哎呀。
如果每个循环有5个步骤,那么最终将得到5^23参数
假设每个循环输出1个字节,您仍然需要存储10^16字节或10000 TB的数据。
我认为你应该重新考虑你的问题,或者重新提出你的问题
编辑:
这不是一个论坛(在论坛中你可以编辑你的文章)。
请编辑你的问题,而不是发布新的答案,我认为这很有趣家庭作业意味着他做了他想学的事情,所以,如果你没有一个好的答案,为什么你会留下这样一个愚蠢的答案?也许如果你再写一次,这次是用英语或类似的语言,可能有人会帮你做家务我不是说他不应该发布作业问题,而是说应该适当地标记,如果是作业并且他正在努力学习,那么仅仅给他提供答案是没有意义的