シェルスクリプトで乱数を扱う方法について解説

この記事では、シェルスクリプトで乱数を生成し、活用する方法について詳しく解説します。

基本的な乱数生成

シェルスクリプトで最も基本的な乱数生成の方法は、\$RANDOM変数を使用することです。\$RANDOM は、0から32767までの整数値をランダムに生成します。

#!/bin/bash

# ランダムな整数を生成
random_number=$RANDOM
echo "Random number: $random_number"

このスクリプトを実行すると、毎回異なる整数が表示されます。

乱数の範囲を指定する

\$RANDOM で生成される乱数の範囲を制限するには、剰余演算を使用します。例えば、0 から 99 までの乱数を生成する場合は次のようにします。

#!/bin/bash

# 0から99までの乱数を生成
random_number=$((RANDOM % 100))
echo "Random number between 0 and 99: $random_number"

乱数の範囲を指定して浮動小数点数を生成する

乱数を浮動小数点数として生成したい場合、以下のように bcコマンドを使用します。以下により0~1までの間の数の乱数を生成することができます。

#!/bin/bash

# 0から1の範囲の浮動小数点数を生成
random_float=$(echo "scale=2; $RANDOM/32767" | bc)
echo "Random float between 0 and 1: $random_float"

shufコマンドを使用する

shufコマンドを使用すると、範囲内のランダムな整数を簡単に生成できます。shufはファイルや入力のシャッフルも可能です。

#!/bin/bash

# 1から10までの乱数を生成
random_number=$(shuf -i 1-10 -n 1)
echo "Random number between 1 and 10: $random_number"
スポンサーリンク

シェアする

フォローする