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)
で区切られる語を、かき混ぜます。
|