seqのススメ
seqって何?
NAME seq - print a sequence of numbers SYNOPSIS seq [OPTION]... LAST seq [OPTION]... FIRST LAST seq [OPTION]... FIRST INCREMENT LAST
数字を順番に出力してくれるコマンド。
使い方は3パターン。 ※各引数の位置に注意。
「最後の値」のみを指定
「1」から「1」ずつ増えて「最後の値」までを出力する。
$ seq 3 1 2 3
「最初の値」と「最後の値」を指定
「最初の値」から「1」ずつ増えて「最後の値」までを出力する。
$ seq 1 5 1 2 3 4 5
「最初の値」と「増やしたい値」と「最後の値」を指定
「最初の値」から「増やしたい値」ずつ増えて「最後の値」までを出力する。
$ seq 1 5 31 1 6 11 16 21 26 31
サンプル
例えば、
連番のファイル(patchとか)を一気にダウンロードするぞ。
って時に便利。
# hoge5.1のパッチ(1から100まで)をダウンロード for i in `seq -w 1 100`; do wget http://example.com/patches/hoge5.1/hoge5.1.$1; done
オプションとか
詳しくはman参照。
DESCRIPTION Print numbers from FIRST to LAST, in steps of INCREMENT. -f, --format=FORMAT use printf style floating-point FORMAT -s, --separator=STRING use STRING to separate numbers (default: \n) -w, --equal-width equalize width by padding with leading zeroes --help display this help and exit --version output version information and exit If FIRST or INCREMENT is omitted, it defaults to 1. That is, an omitted INCREMENT defaults to 1 even when LAST is smaller than FIRST. FIRST, INCREMENT, and LAST are interpreted as floating point values. INCREMENT is usually positive if FIRST is smaller than LAST, and INCREMENT is usu- ally negative if FIRST is greater than LAST. FORMAT must be suitable for printing one argument of type `double'; it defaults to %.PRECf if FIRST, INCREMENT, and LAST are all fixed point deci- mal numbers with maximum precision PREC, and to %g otherwise.
*1:ちゃんとゼロ詰めもしてくれる。