| # | スクリプト | 解説 | |
|---|---|---|---|
| 1 | #! /bin/bash | # | |
| 2 | # Print column scale | # | |
| 3 | n=1 | # 変数の初期化 | |
| 4 | m=1 | # | |
| 5 | while (( $n <= $1 )) | # 引数で指定した数値までループ | |
| 6 | do | # | |
| 7 | case $n in | # カウンタ(n)を評価 | |
| 8 | *5) echo -n "+" ;; | # 下一桁が 5 の時、+ を表示 | |
| 9 | *0) echo -n $m | # 下一桁が 0 の時 | |
| 10 | let m=m+1 | # 10の桁を計算し、その値を表示 | |
| 11 | if (( $m>9 ));then | # カウンタが3桁になる場合は、 | |
| 12 | m=0 | # 0にリセット | |
| 13 | fi | # | |
| 14 | ;; | # | |
| 15 | *) echo -n "." ;; | # 上記(下一桁0,5)以外は、. を表示 | |
| 16 | esac | # | |
| 17 | let n=n+1 | # カウンタを更新(1加算) | |
| 18 | done | # | |
| 19 | echo "" | # |
$ scale 50 ....+....1....+....2....+....3....+....4....+....5 $ scale 120 ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+....0....+....1....+....2
| # | スクリプト | 解説 | |
|---|---|---|---|
| 1 | #! /bin/bash | # | |
| 2 | # @(#) print column scale | # | |
| 3 | m=1 | # | |
| 4 | for ((n=1;n<=$1;n++)) | # for文を使い、1から第1引数の値までを繰り返し | |
| 5 | do | # | |
| 6 | case $n in | # | |
| 7 | *5) echo -n "+" ;; | # | |
| 8 | *0) echo -n $m | # | |
| 9 | let m=m+1 | # | |
| 10 | if ((m>9)); then | # 数値比較の省略記法 | |
| 11 | m=0 | # | |
| 12 | fi | # | |
| 13 | ;; | # | |
| 14 | *) echo -n "." ;; | # | |
| 15 | esac | # for文内で増分値を指定しているため、加算式は不要 | |
| 16 | done | # | |
| 17 | echo "" | # |