tail head cat sleep
QR code linking to this page

manページ  — JOT

名称

jot – 連続ないしは、乱数データを出力する

内容

書式


jot [-cnr] [-b word] [-w word] [-s string] [-p precision] [reps [begin [end [s]]]]

解説

jot ユーティリティは、 増加・減少・ランダム・冗長データを通常は数字で、一行毎に出力します。

以下のようなオプションが利用できます。
-r
  デフォルトの連続したデータの代わりに、乱数を作成します。
-b word
  word を、繰り返し出力するだけです。
-w word
  word のあとに、生成されたデータを付け加え、出力します。 8 進・16 進・指数・ASCII・0 で埋めた表示・右詰め表現などは、適切な printf(3) 記法を word 中で指定することで、可能です。この場合、データは追加されるというよりも、 挿入されると考えてください。
-c
  これは、 -w %c の省略形です。
-s string
  string で分けられたデータを出力します。 普通は、改行文字がデータを分割します。
-n
  通常追加される、最後の改行を出力しません。
-p precision
  整数 precision で指定されたデータの文字数もしくは桁数だけ表示します。 -p がない場合、精度値は beginend の引数の精度の大きい方です。 -p オプションは、 -w に続く printf(3) 記法が指定されている時には、上書きされます。

最後の 4 つの引数はそれぞれデータ数・下界・上界と、幅の大きさまたは、乱数のため の種です。 少なくともどれか一つが指定されなければなりませんが、その他の 3 つは引数として - を与えると、省略できます。 これら 3 つの引数を指定すれば、4 つ目が決まります。 4 つとも指定されて、 reps の与えられた値と、計算された値とが相反する場合、小さい方を用います。 指定された数が 3 つより少ない場合には、 s を除いて、 デフォルト値を左から右へ割り当てます。 s は、 beginend が共に指定された場合以外、デフォルト値が設定されます。

4 つの引数に対するデフォルトは、乱数が要求された時を除いて、 それぞれ、100, 1, 100, 1です。 乱数の種 s はランダムに選択されます。 reps 引数は、符号無し整数であると想定されています。 0 が与えられた場合は、無限回数となります。 beginend は、実数、もしくは文字の場合は対応する ASCII 値としてあたえられます。 最後の引数は、実数でなければなりません。

乱数値は、 random(3) を使って得られます。 名前 jot は、 APL 中の関数 iota の部分から来ています。

使用例

コマンド

    jot 21 -1 1.00

は、-1 から 1 へ増加する等間隔の数字を 21 個出力します。 ASCII 文字集合は、以下のようにします。

    jot -c 128 0

xaa から xaz までの文字列は以下のようにします。

    jot -w xa%c 26 a

20 個のランダムな 8 文字は以下のようにして作成します。

    jot -r -c 160 a z | rs -g 0 8

無限に、 yes を出したい場合は、以下のようにします。

    jot -b yes 0

ed(1) の置換コマンドを、30 回、2, 7, 12 行等のように (5 行毎に ) 適用する場合の 解答例は以下のようになります。

    jot -w %ds/old/new/ 30 2 - 5

だぶりのある 9, 9, 8, 8, 7 の様な列は、 以下のように適切にステップの大きさを設定することで、実現できます。

    jot - 9 0 -.5

ファイルが正確に 1024 バイトであるように作成するには、

    jot -b x 512 > block

最後に、タブを 4 つのスペースに設定し、10 カラム目からはじまって、 132 カラム目で終るようにするには、以下のようにします。

    expand -`jot -s, - 10 132 4`

80 文字以上の行を全て表示するには、以下を使ってください。

    grep `jot -s amp;"amp;" -b amp;. 80`

診断

The utility exits 0 on success, and >0 if an error occurs. 次の診断メッセージは、特別な解説を要します:
illegal or unsupported format '%s' printf(3) 用に要求された変換書式指示子は、

    %[#][ ][{+,-}][0-9]*[.[0-9]*]?

の書式ではありませんでした。 ここで "?amp;" は

    [l]{d,i,o,u,x}

または

    {c,e,f,g,D,E,G,O,U,X}

のいずれかひとつです。

range error in conversion 表示すべき値は、要求された出力書式に関連付けられたデータタイプの 範囲外の結果になりました。
too many conversions 1 個しか許されないところを、複数の変換書式指示子が指定されました。

関連項目

ed(1), expand(1), rs(1), yes(1), printf(3), random(3)

JOT (1) June 6, 1993

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

If you have an emergency I'm great at running around and flailing my arms
— Artur Bagyants