GNU/Linux >> Linux の 問題 >  >> Linux

初心者向けの例を含むShufコマンドチュートリアル

Shufコマンドは、LinuxおよびUnixライクなオペレーティングシステムでランダム順列を生成するために使用されます。 shufコマンドを使用すると、特定の入力ファイルの行をランダムにシャッフルできます。 ShufコマンドはGNUCoreutilsの一部であるため、インストールに煩わされることはありません。この簡単なチュートリアルでは、shufコマンドの例をいくつか紹介します。

例を含むShufコマンドチュートリアル

ostechnix.txtという名前のファイルがあります 以下の内容で。

$ cat ostechnix.txt 
line1
line2
line3
line4
line5
line6
line7
line8
line9
line10

ここで、上記の行をランダムな順序で表示してみましょう。これを行うには、次を実行します:

$ shuf ostechnix.txt 
line2
line8
line5
line10
line7
line1
line4
line6
line9
line3

見る?上記のコマンドは、「ostechnix.txt」という名前のファイルの行の順序をランダム化し、結果を出力します。

出力を別のファイルに書き込みたい場合があります。たとえば、出力を output.txtという名前のファイルに保存したいとします。 。これを行うには、最初にoutput.txtファイルを作成します:

$ touch output.txt

次に、 -oを使用してそのファイルに出力を書き込みます 以下のようなフラグ。

$ shuf ostechnix.txt -o output.txt

上記のコマンドは、ostechnix.txtファイルの内容をランダムにシャッフルし、出力をoutput.txtファイルに書き込みます。次のコマンドを使用して、output.txtファイルの内容を表示できます。

$ cat output.txt

line2
line8
line9
line10
line1
line3
line7
line6
line4
line5

ファイルのランダムな行のいずれかを表示したいだけです。どうすればいいですか?シンプル!

$ shuf -n 1 ostechnix.txt 
line6

同様に、最初の「n」個のランダムなエントリを選択できます。次のコマンドは、最初の5つのランダムなエントリのみを表示します。

$ shuf -n 5 ostechnix.txt 
line10
line4
line5
line9
line3

ファイルから行を読み取る代わりに、 -eを使用して入力を直接渡すことができます。 以下のようなフラグ。

$ shuf -e line1 line2 line3 line4 line5
line1
line3
line5
line4
line2

番号をシャッフルすることもできます:

$ shuf -e 1 2 3 4 5
3
5
1
4
2

指定された範囲からいずれかをすばやく選択するには、代わりにこのコマンドを使用してください。

$ shuf -n 1 -e 1 2 3 4 5

または、以下のように任意の3つの乱数を選択します。

$ shuf -n 3 -e 1 2 3 4 5
3
5
1

特定の範囲内で乱数を生成することもできます。たとえば、1〜10の乱数を表示するには、次を使用します。

$ shuf -i 1-10
1
9
8
2
4
7
6
3
10
5

詳細については、manページを参照してください。

$ man shuf

Linux
  1. Linuxは初心者向けのコマンドチュートリアルを展開します(例付き)

  2. 初心者向けのLinuxファクターコマンドチュートリアル(例付き)

  3. 初心者向けのLinuxtacコマンドチュートリアル(例付き)

  1. 初心者向けのLinuxnprocコマンドチュートリアル(例付き)

  2. 初心者向けのLinuxshufコマンドチュートリアル(例付き)

  3. 初心者向けの例を含むタイプコマンドチュートリアル

  1. 初心者向けのLinuxexprコマンドチュートリアル(例付き)

  2. Linux yes初心者向けコマンドチュートリアル(例付き)

  3. 初心者向けの例を含むNumfmtコマンドチュートリアル