tail head cat sleep
QR code linking to this page

manページ  — RANDOM

名称

random – ファイルからのランダムな行選択、あるいは乱数

内容

書式


random [-elrUuw] [-f filename] [denominator]

解説

random は 2 つの異なる動作モードがあります。 デフォルトは、標準入力の行を読み取り、 1 / denominator の確率でそれらを標準出力へ書き込むことです。 この動作モードでのデフォルトの denominator は 2 であり、各行が表示される確率は 50/50 です。

第 2 の動作モードは、 filename からファイルを読み取り、ファイルの中身をかき混ぜ、 これを標準出力へ送るというものです。 ファイル内容は、改行または isspace(3) で判定される空白文字をもとに、かき混ぜられます。 この動作モードでのデフォルトの denominator は 1 であり、各行は表示されますが random(3) 順となります。

オプションは以下の通りです。
-e
  -e オプションが指定されていると、 random は何も読み書きせず、 0 から denominator amp;- 1 までの整数からランダムに選んだ値を返り値として そのまま終了します。
-f filename
  -f オプションは、読み取る filename を指定するために使用されます。 filename が '-' の場合、標準入力が使用されます。
-l
  改行で入力をかき混ぜます (デフォルト)。
-r
  -r オプションは、出力がバッファリングされないことを保証します。
-U
  かき混ぜた出力を作成するときに、同じ行や語を再利用して良いことを random(6) に指示します。
-u
  同じ行または語をファイルから選択しないよう random(6) に指示します (デフォルト)。 入力に同じトークンが複数個ある場合には一意性を保証しませんが、 同じトークンが複数回選択されることは妨げます。
-w
  改行ではなく、 isspace(3) で区切られる語を、かき混ぜます。

関連項目

random(3), fortune(6)

バグ

トークン表示時にはインデックスを使用していません。 このため、大きなファイル (10MB+) では遅くなるでしょう。 性能の影響を受ける領域でこれを使用するのでしたらば、工夫したでしょう。 しかしながら、小さなファイルに対しては十分に高速で効率的です。

歴史

行や語をかき混ぜる機能は、2003 に Sean Chittenden <seanc@FreeBSD.org> が追加しました。

RANDOM (6) February 8, 2003

tail head cat sleep
QR code linking to this page


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

The most important thing in the programming language is the name. A language will not succeed without a good name. I have recently invented a very good name and now I am looking for a suitable language.
— Donald Knuth