Linux:双变量循环,循环多个变量

i=0
j=0
while [ $i -lt 5 ] && [ $j -lt 5 ]     #限制自增最大值,5是因为1.txt一共4行
do
  # echo $i
  # echo $j
  ((i++))
  ((j++))
  a=`awk 'NR=='$i'{print $2}' ./1.txt`   #拿到1.txt里面第i行第2列的一个元素
  b=`awk 'NR=='$j'{print $2}' ./2.txt`   #拿到2.txt里面第j行第2列的一个元素
  # echo $a
  # echo $b

  sed -e "s/${a}/${b}/g" -i ./3.txt    #将3.txt的所有a替换为b,实现了循环依次替换

done

posted @ 2022-09-07 15:37  YlnChen  阅读(438)  评论(0编辑  收藏  举报