bashで$RANDOM変数を使った時の話
なんでもいいから順番ではない乱数を使いたい そんなときは、$RANDOM変数を使ってみよう。 $RANDOM
変数を使えば0~32767で、ランダムに数字が現れる。 これを使えば、打ち込むたびに違う数字が出せるし、 100個や200個だって、まとめてランダムな数字を出せる
範囲を限定する計算
0~32767って、そんな大きい数の乱数使わない。 もっと100までの中とか、最大を小さくしたい! という場合もあると思います。 そういう場合は何を使ったらいいの?と自分も思いました。 しかしそんなものを用意するんじゃなくて、 $RANDOM
変数をうまく変形させて、上限を変えるんですね! たとえば、 上限を100にしたいと思ったら $RANDOM
変数に101かけて32768で割るとかですね! 32767を32768で割れば、最大でも1にはならない つまり、0~0.999…までになりますから それに101をかけてあげれば101にはならない 100までの何かしらの数字が出てきます。 わかりずらいけど、頑張って考えてたら自分も納得できるようになりました。
並び替えて、重複を消す
並び替える。重複を消す。 それぞれにコマンドが用意されていますので見ていくと 並び替えは
sort -n ファイル名</br>
重複を消すには
uniq ファイル名</br>
で、可能です。 オプションを付ければ、もっといろんな並び替え方、重複のないのだけ表示とかもできます。 ここで間違えやすいのが、ソートされていないファイルは 重複消してもあまりうまくいかないことです。 消えてないのがチラホラあったりして なので、ソートしてから削除する必要があるのですが このコマンド、1回で書くことができます。
sort -n ファイル名 | uniq</br>
と、書いてあげれば、一回でできたのでぜひ使ってみてください。