Linuxコマンド辞典 shufコマンド(テキスト処理)

ランダムに並び替え(シャッフル)して出力する「shuf」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

参考サイト:Man page of INSTALL

概要・使用方法

入力されたテキストを行単位でランダムに並び変えて出力します。ファイルを指定が無い、もしくは「-」が指定されていれば標準入力から読み込みます。

書式

$ shuf [オプション] [ファイル名] [引数・・・]

オプション

-e
–echo
引数に渡した文字列を出力対象にする
-i 数1-数2
–input-range
数1~数2の範囲でランダムに並び替えて出力する
-n 数
–head-count
出力する個数を指定する
-o ファイル名
–output ファイル名
出力をファイルに書き込む
–random-source ファイル名乱数の入力に利用するファイルを指定する(デフォルトは/dev/urandom)
-z
–zero-terminated
改行の代わりにNULL文字を出力する

ランダムな数字のうち1つをランダムに抽出する

「-i」オプションでランダムに抽出する数字の範囲を指定します。-nオプションで出現させる数を指定します。

$ shuf -i ランダムの範囲 -n 出現させる個数

実行結果

[sunarin@localhost work]$ shuf -i 1-10 -n 1
3
[sunarin@localhost work]$ 
[sunarin@localhost work]$ shuf -i 1-10 -n 2
5
9
[sunarin@localhost work]$