本日のシェル芸勉強会(http://usptomo.doorkeeper.jp/events/8339)の中でプチ話題になったjotコマンド。
イマイチ使い方をちゃんと把握していなかったので調べてみました。※確認・検証はFreeBSD 8.3にておこなっておりまする。
当時の認識>jot 回数 開始 終端
#シェル芸 #usptomo— くんすと (@kunst1080) 2014, 2月 15調べてみた結果、かなり便利なコマンドのようです。seq + yesみたいな感じかな。
man jot
1
2
3
4
5
6
7
8
9
10
11
12
13
|
JOT(1) FreeBSD General Commands Manual JOT(1)
NAME
jot ? print sequential or random data
SYNOPSIS
jot [-cnr] [-b word] [-w word] [-s string] [-p precision]
[reps [begin [end [s]]]]
DESCRIPTION
The jot utility is used to print out increasing, decreasing, random, or
redundant data, usually numbers, one per line.
|
以下略!
基本的な構文
で、開始と終了は省略可能。
1
2
3
4
5
6
7
|
% jot 5
1
2
3
4
5
|
1
2
3
4
5
6
7
|
% jot 5 10
10
11
12
13
14
|
1
2
3
4
5
6
7
|
% jot 5 6 10
6
7
8
9
10
|
- 回数・開始・終了が連続しない場合、回数に合わせて割り算してくれる感じ。
1
2
3
4
5
6
7
|
% jot 5 2 10
2
4
6
8
10
|
- 回数に0を指定すると無限に出力(yesみたくなる)
1
2
3
4
5
6
7
8
|
% jot 0 | head
1
2
3
4
5
6
|
1
2
3
4
5
6
7
8
9
10
11
12
|
% jot -b a 0 | head
a
a
a
a
a
a
a
a
a
a
|
jotコマンドのオプション
-rオプション
1
2
3
4
5
|
% jot -r 3
80
8
97
|
1
2
3
4
5
|
% jot -r 3 1000 2000
1235
1172
1404
|
-bオプション
文字を繰り返し出力
1
2
3
4
5
|
% jot -b PIZA 3
PIZA
PIZA
PIZA
|
-wオプション
1
2
3
4
5
|
% jot -w %03d 3
001
002
003
|
-wオプション
- -w %c と同じ。生成された数字をアスキーコードとして文字を出力する
1
2
3
4
5
|
% jot -c 3 65 67
A
B
C
|
-sオプション
- 区切り文字を変更する。指定しない場合は改行コード。
1
2
3
|
% jot -s , 10
1,2,3,4,5,6,7,8,9,10
|
1
2
3
|
% jot -s , -w %03d 10
001,002,003,004,005,006,007,008,009,010
|
-nオプション
改行コードを出力しない
1
2
3
4
5
|
% jot -n 3
1
2
3%
|
1
2
3
|
% jot -n -s , 3
1,2,3%
|
-pオプション
整数で指定されたデータの文字数もしくは桁数だけ表示
1
2
3
4
5
6
|
% jot -p 2 4 8 11
8.00
9.00
10.00
11.00
|
1
2
3
4
5
|
% jot -p 2 -w %03d 3
001
002
003
|
その他
1
2
3
4
5
|
% jot 3 a c
97
98
99
|
1
2
3
4
5
|
% jot -c 3 a c
a
b
c
|
1
2
3
4
5
6
7
|
% jot -r -c 40 a z | rs -g 0 8
mnuqpxzx
ortfkjnd
xjllnkpj
zjghdayl
qpzjihai
|
参考URL
ここの「使用例」がすごく参考になります。