特定の範囲から乱数を生成するために $RANDOM で使用できるいくつかのオプションを特定しようとしていますが、見つけることができません。誰かが私を助けてくれませんか。echo $RANDOM はシェルから数値を生成しますが、ランダムであり、私の範囲に固有のものではありません。1から100までの範囲でランダムに生成したい。
質問する
4684 次
5 に答える
2
GNU ソートがある場合:
rand=$( seq $start $end | sort -R | head -1)
外部ツールを呼び出すため、$RANDOM で演算を実行するよりも数ミリ秒遅くなります。
于 2013-01-22T22:36:57.947 に答える
1
関数を使用してこれを試してくださいshell
:
intrandfromrange() { echo $(( ( RANDOM % ($2 - $1 +1 ) ) + $1 )); }
intrandfromrange 1 100
説明
foo() { }
シェル関数のスケルトンです。$((...))
囲まれた算術式の結果を返します。%
modulo、除算の余りを表します。$1
&$2
は、関数の最初と 2 番目の引数です。- あとは簡単な算数です。
于 2013-01-22T18:01:42.503 に答える
0
第 3 世代言語を使用する場合:
python -c 'import random; print(random.randint(1, 100))'
于 2013-01-22T18:56:02.720 に答える