bashのRANDOMコマンドの最大値
Bashで大量データを作成する時にRANDOMコマンドを使って数値を生成していたのだが、
Bashのmanページを見てみると、
RANDOM Each time this parameter is referenced, a random integer between 0 and 32767 is generated. The sequence of random numbers may be initialized by assigning a value to RANDOM. If RANDOM is unset, it loses its special properties, even if it is subsequently reset.
と書いてあり、0から32767までの数値しか生成してくれないみたいだ。
試しに50000件ほどRANDOMで書き出してみると、最大値が32767で重複している数値が複数見られたので、
RANDOMの代わりに、shufコマンドを使用する事にした。
shuf -i 0-100000 -n 1
とやれば、0から100000の範囲の中で1度だけ数値を出力してくれる。
shufはshuffleの略らしい。
詳しくはmanページを見ると良い。あんまり引数の種類が無いから、そんなに覚える事も無くて楽に使えそう。
https://linuxjm.osdn.jp/html/GNU_coreutils/man1/shuf.1.html