内部ループ条件は、外部ループ動作に依存します。

内部ループ条件は、外部ループ動作に依存します。

ループ条件が実行中の外部ループに依存するように内部ループをどのように設定できますか?

私の状況は私が探しているコードにとって重要ではないかもしれませんが、状況は次のとおりです。 URLが両方のパラメータに依存する変更URLで実行したいクローラがあります。最初は年、2番目はページ、ページの範囲は年によって異なります。

私が今まで試したことは次のとおりです。

#!/bin/bash

numbers2004={625..721}
numbers2005={723..823}

for year in 2004 2005
do
  for number in numbers$year
  do
    echo "$year $number"
  done
done

それは私に与えなければなりません

2004 625
2004 626
...
2004 720
2004 721
2005 723
2005 724
...
2005 822
2005 823

ベストアンサー1

現在のbashバージョンを使用する:

#!/bin/bash

declare -A numbers    # declare associative array
printf -v numbers[2004] "%s " {625..721}
printf -v numbers[2005] "%s " {723..823}

for year in 2004 2005
do
  for number in ${numbers[$year]}
  do
    echo "$year $number"
  done
done

おすすめ記事