2013年9月19日木曜日

bash の brace expansion で数列生成できる

中括弧(brace)を使ったイディオム、たとえば

$ cp /foo/bar{,.orig}
はよく使っていた。でも数列まで扱えるとは知らなかった。

数列を作るときは seq コマンドを使って

seq 1 10
などと打っていた。

これも間違いではないが、中括弧を使えば seq 無しで、すなわち、

{1..10}
と書けるのだった。おそらく中括弧を使ったほうがスッキリきれいに書ける場面が多いだろう(キーボードを打つ回数だけ比較したらあまり変わらないかもしれないが。。。)

この brace expansion で数列を作る具体例のほとんどは「LinuxTips 連番ファイルをコマンド一発で作成する」に書いてあるのであまり付記することは無い。強いて挙げるならば、増分(increment)も指定できる点。以下がその例。

$ echo {1..10..2}
1 3 5 7 9
$ echo {z..a..5}
z u p k f a



0 件のコメント:

コメントを投稿