永发信息网

Shell脚本如何控制外循环一次内循环一次,请教高手!!!

答案:2  悬赏:60  手机版
解决时间 2021-02-21 11:59
  • 提问者网友:咪咪
  • 2021-02-20 22:15
#!/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
...
请教高手!!!!!!!!!
最佳答案
  • 五星知识达人网友:野味小生
  • 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
全部回答
  • 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
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯