seq コマンドを使うと簡単にできます。以下のコマンドで 1 から 5 までの数字を改行区切りで得られます。 #!/bin/bash seq 1 5 seq コマンドの結果を用いてループする場合は以下のようになります。 #!/bin/bash # for 文の場合 end=5 for i in $(seq 1 $end); do echo $i done # while 文の場合 - サブシェルパターン end=5 seq 1 $end | while read -r i; do echo $i done # while 文の場合 - プロセス置換パターン end=5 while read -r i; do echo $i done < <(seq 1 $end) ちなみにループしたいだけであれば、Bash のみなりますが二重丸括弧 (( )) を用いて for 文で書くこともできます。
![シェルスクリプトで指定した範囲の数値 (range) を取得する](https://cdn-ak-scissors.b.st-hatena.com/image/square/97acba93430d01fcfc2b41d40a4f40d90867f0d1/height=288;version=1;width=512/https%3A%2F%2Fsousaku-memo.net%2Fwp-content%2Fuploads%2F2020%2F05%2F2014-social-github-octocat-512-t4n3.png)