くらし情報『新・OS X ハッキング! (156) 機能逆引きなら使える? 便利に使えるワンフレーズコマンド集(3)』

新・OS X ハッキング! (156) 機能逆引きなら使える? 便利に使えるワンフレーズコマンド集(3)

、1~100の範囲から3つの数字を選ぶのであれば「-r 3」とすればOKだ。なお、乱数は同じ範囲から繰り返し抽出されるため、重複することがあるので注意しよう。

$ jot -r 5 1 40

○特定範囲から重複しない数字をランダムに選ぶ

特定範囲から乱数を得るときjotコマンドを使う方法は、覚えやすく手っ取り早いが、重複することがあるのが難点。誰かに"貧乏クジ"を引かせる用途に使うときなど、繰り返しコマンドを実行すれば非難されること必至、1回勝負で決めることが望ましい。

そんなときは、少々長めのコマンドになるが、perlスクリプトを使うといい。Perl標準の配列操作ライブラリ「List::Util」に含まれるshuffle関数を使い、示した範囲の数字を標準出力へアウトプットし、その先頭から3行をheadコマンドで抽出し画面に書き出す、という仕組みだ。Excelで同様の処理をしようとすると、VLOOKUP関数を使うなど手間がかかるが、こちらの方法であればコマンドライン1行で済む。より効率的と思うが、いかがだろうか。
$ perl -MList::Util=shuffle -e ’print join"\n",shuffle(1..40)

関連記事
新着くらしまとめ
もっと見る
記事配信社一覧
facebook
Facebook
Instagram
Instagram
X
X
YouTube
YouTube
上へ戻る
エキサイトのおすすめサービス

Copyright © 1997-2024 Excite Japan Co., LTD. All Rights Reserved.