Bash の for 文 その 2

Bash の for 文 の続きです。

文字列内のリスト

次のように文字列の空白で区切られた項目をリストとして ループさせることができます。

$ ITEMS="one two three four"

$ for item in $ITEMS
> do
>     echo $item;
> done;

one
two
three
four

正しくは空白ではなく IFS (Internal Field Separator) で定義されているもので 文字列を分割します。 IFS を変更すると区切りを変えることができます。

$ ITEMS="one/two/three four"
$ IFS="/"

$ for item in $ITEMS
> do
>     echo $item;
> done;

one
two
three four

引数のリスト

他に引数のリストでループさせるというのもあります。

$ function test () {
>     for item in $*
>     do
>         echo $item;
>     done;
> }

$ test one two three four

one
two
three
four

Google サイト内検索

Amazonアソシエイト