それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

シェルで乱数を使うには環境変数が楽

bashで乱数を扱おうともったら

どうするんだろうと思って調べたら $RANDOM なる環境変数を発見した

環境変数 RANDOM の使い方

単純にecho するだけでいい。

echo $RANDOM

実際にどうなるか試してみよう

takuya@:~$ for i in {1..10}; do echo $RANDOM ; done
2718
8244
29839
29206
12892
18803
17076
26083
19687
3416

うん、これで乱数を取得できる

0-9 までの乱数がほしいときはどうするの?

もちろん剰余を使うんだよね。

echo $(( $RANDOM%10 ))

そこそこバラけてる

ランダムな変数をほしいときにそれぞれ作れる

takuya@:~$ for i in {1..1000}; do echo $(( $RANDOM%10 )) ; done  | sort  | uniq -c
     95 0
     97 1
    126 2
    101 3
     96 4
     98 5
     88 6
    111 7
     90 8
     98 9

参考資料

https://www.cyberciti.biz/faq/bash-shell-script-generating-random-numbers/

他にも od を使う方法がある。

https://hydrocul.github.io/wiki/commands/od.html