#!/bin/bash
unset a
unset c
for a in 000 210 220 451 240
do
echo $a
for c in 001 002 003 004 005
do
echo $c
done
done
我希望的是得到结果为
001
000
002
210
003
220
004
451
...
请教高手!!!!!!!!!
Shell脚本如何控制外循环一次内循环一次,请教高手!!!
答案:2 悬赏:60 手机版
解决时间 2021-02-21 11:59
- 提问者网友:咪咪
- 2021-02-20 22:15
最佳答案
- 五星知识达人网友:野味小生
- 2021-02-20 22:39
虽然觉得不适合用循环嵌套来实现,但毕竟还是可以做到的。
用计数器来同步内外循环即可。
#!/bin/bash
unset a
unset c
count1=0
for a in 000 210 220 451 240
do
let count1+=1
count2=0
for c in 001 002 003 004 005
do
let count2+=1
[ $count2 -eq $count1 ] && echo $c && break
done
echo $a
done
用计数器来同步内外循环即可。
#!/bin/bash
unset a
unset c
count1=0
for a in 000 210 220 451 240
do
let count1+=1
count2=0
for c in 001 002 003 004 005
do
let count2+=1
[ $count2 -eq $count1 ] && echo $c && break
done
echo $a
done
全部回答
- 1楼网友:春色三分
- 2021-02-21 00:12
1、看不出规律,假如是按++
#!/bin/sh
n=100
for((i=1;i<$n;i++))
{
((j=n-i))
echo id="0000:03:00.${j}",name="xgbe${i}"
}
2、如果没有规律,就先做一个列表文件
例如
1 mgt1
2 mgr2
3 xgbe21
然后创建b.sh
#!/bin/sh
while read x y;
do
echo id="0000:03:00.${x}",name="${y}";
done < a.txt
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯