シェルを使用して任意の1桁の数字を生成する方法

シェルを使用して任意の1桁の数字を生成する方法

任意の1桁の数字を生成する方法は?

私はseq -w 10これを利用して次のような結果を得ました。

01
02
03
04
05
06
07
08
09
10

0から10までの1桁の数字だけをランダムに選択する追加のロジックをどのように実装できますか?

ベストアンサー1

shuf -i0-9 -n1

shufランダムな順列を生成して-i範囲引数を受け入れるので、range を指定し、0-9like-n1head乱数の最初の数字だけを印刷します。


RANDOMまたは、Kornなどのシェルの組み込みシェル変数(ksh、zsh、bash、yash、busybox sh)を使用できます。

echo "$((RANDOM % 10))"

しかしRANDOM(でman bash

0から32767までの任意の整数

これは、特定の数字の可能性がわずかに低いことを意味します(重要な場合)。

数字の場合、0-7これは本当です100 * 3277 / 32767 ≈ 10.00092 %

数値8合計の9場合100 * 3276 / 32767 ≈ 9.99786 %

おすすめ記事