アプリ版:「スタンプのみでお礼する」機能のリリースについて

以下のシェルスクリプトをfor((; ;))の形を使わずに修正するとどのように
書けますでしょうか。宜しくお願いします。

$ vim test.sh
$ cat test.sh
#!/bin/bash

for((i=1;i<=$1;i++));do
no="0$i"
if [ -d "./No.${no: -2}" ]; then
echo "No.${no:-2} Directory already exists!" 1>&2
else
mkdir "./No.${no: -2}"
fi
done

$ chmod +x test.sh
$ ./test.sh 20
・・・実行結果・・・

A 回答 (2件)

for i in $(seq $1)


と書かれることが多いです。書くのが楽。
外部コマンドseqを実行するので、bash内で完結するfor((i=1;i<=$1;i++))に比べると微妙に遅くなりますが、誤差の範囲でしょう。
    • good
    • 0

同じ質問を繰り返し投稿するのは違反ですよ!


止めましょう!
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!