逆引きシェルスクリプト/シェルでランダム値を使用する
の編集
Top
/
逆引きシェルスクリプト
/
シェルでランダム値を使用する
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
#navi(../) * シェルでランダム値を使用する [#tf9aae2c] bash, zshでは、$RANDOMに乱数が格納されています。~ 以下、bashを利用してランダム値(乱数)の使用方法について記述します。~ (zshでの動作は未確認です) #contents #htmlinsertpcsp(linux_ads_top.html,linux-sp.html) * RANDOM変数の説明 [#gbd8d6a8] bashでは、以下のように$RANDOM変数にランダムな値が格納されています。~ 以下、man bashをしRANDOMについて記述されているところの抜粋です。 RANDOM このパラメータが参照される度に、 0 から 32767 までのランダムな整 数が生成されます。 RANDOM に値を代入すると、乱数の列を初期化でき ます。 RANDOM を unset すると、この変数の特殊な性質は無くなります。 後で再び set しても元には戻りません。 したがって、端末からechoコマンドを利用し$RANDOMを表示すると以下のようになります。~ 表示される値は、man bashに記述されているように0から32767までの乱数になります。 $ echo $RANDOM 25480 10回$RANDOM値を表示してみてランダムな値になっていることを確認しました。 $ for i in `seq 1 10`; do echo RANDOM : $RANDOM; done RANDOM : 2596 RANDOM : 15051 RANDOM : 16521 RANDOM : 20035 RANDOM : 25756 RANDOM : 22570 RANDOM : 23602 RANDOM : 14320 RANDOM : 2425 RANDOM : 29152 * 範囲を指定した乱数値を取得したい(例 0~99) [#wbef5797] 例えば0〜99までのランダムな値を取得したい場合は、以下のようにすれば実現できます。~ 乱数$RANDOMを100で割り、余りの値を取得します。(割り算をして余りを取得しているので0〜99となります) RND=`expr $RANDOM % 100` echo $RND 実際に10回ループさせて0〜99までのランダム値を取得してみます。 $ for i in `seq 1 10`; do echo RANDOM ${i} : `expr $RANDOM % 100`; done RANDOM 1 : 90 RANDOM 2 : 30 RANDOM 3 : 28 RANDOM 4 : 24 RANDOM 5 : 35 RANDOM 6 : 93 RANDOM 7 : 45 RANDOM 8 : 9 RANDOM 9 : 10 RANDOM 10 : 78 以上、bashで提供されているRANDOM変数を利用した乱数取得の説明でした。 #htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
タイムスタンプを変更しない
#navi(../) * シェルでランダム値を使用する [#tf9aae2c] bash, zshでは、$RANDOMに乱数が格納されています。~ 以下、bashを利用してランダム値(乱数)の使用方法について記述します。~ (zshでの動作は未確認です) #contents #htmlinsertpcsp(linux_ads_top.html,linux-sp.html) * RANDOM変数の説明 [#gbd8d6a8] bashでは、以下のように$RANDOM変数にランダムな値が格納されています。~ 以下、man bashをしRANDOMについて記述されているところの抜粋です。 RANDOM このパラメータが参照される度に、 0 から 32767 までのランダムな整 数が生成されます。 RANDOM に値を代入すると、乱数の列を初期化でき ます。 RANDOM を unset すると、この変数の特殊な性質は無くなります。 後で再び set しても元には戻りません。 したがって、端末からechoコマンドを利用し$RANDOMを表示すると以下のようになります。~ 表示される値は、man bashに記述されているように0から32767までの乱数になります。 $ echo $RANDOM 25480 10回$RANDOM値を表示してみてランダムな値になっていることを確認しました。 $ for i in `seq 1 10`; do echo RANDOM : $RANDOM; done RANDOM : 2596 RANDOM : 15051 RANDOM : 16521 RANDOM : 20035 RANDOM : 25756 RANDOM : 22570 RANDOM : 23602 RANDOM : 14320 RANDOM : 2425 RANDOM : 29152 * 範囲を指定した乱数値を取得したい(例 0~99) [#wbef5797] 例えば0〜99までのランダムな値を取得したい場合は、以下のようにすれば実現できます。~ 乱数$RANDOMを100で割り、余りの値を取得します。(割り算をして余りを取得しているので0〜99となります) RND=`expr $RANDOM % 100` echo $RND 実際に10回ループさせて0〜99までのランダム値を取得してみます。 $ for i in `seq 1 10`; do echo RANDOM ${i} : `expr $RANDOM % 100`; done RANDOM 1 : 90 RANDOM 2 : 30 RANDOM 3 : 28 RANDOM 4 : 24 RANDOM 5 : 35 RANDOM 6 : 93 RANDOM 7 : 45 RANDOM 8 : 9 RANDOM 9 : 10 RANDOM 10 : 78 以上、bashで提供されているRANDOM変数を利用した乱数取得の説明でした。 #htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
テキスト整形のルールを表示する