GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux shuf Command Tutorial für Anfänger (mit Beispielen)

Wenn Sie schon einmal Karten gespielt haben, kennen Sie wahrscheinlich den Begriff Mischen. Etwas schwer vorstellbar, es gibt ein Linux-Befehlszeilentool, das genau das mit Zeilen in Dateien macht. In diesem Tutorial werden wir die Grundlagen des 'shuf'-Befehls anhand einiger leicht verständlicher Beispiele besprechen.

Aber bevor wir das tun, ist es erwähnenswert, dass alle Beispiele hier auf einem Ubuntu 18.04 LTS-Rechner getestet wurden.

Linux-shuf-Befehl

Mit dem Befehl shuf in Linux können Sie zufällige Permutationen generieren. Es folgt die Syntax:

shuf [OPTION]... [FILE]

Und so erklärt es die Manpage des Tools:

Write a random permutation of the input lines to standard output.

Im Folgenden finden Sie einige Beispiele im Q&A-Stil, die Ihnen eine bessere Vorstellung davon vermitteln sollen, wie der Befehl shuf funktioniert.

Q1. Wie verwende ich den Befehl shuf?

Die grundlegende Verwendung ist sehr einfach. Übergeben Sie einfach einen Dateinamen als Eingabe. Hier ist ein Beispiel:

shuf test.txt

Jetzt enthält die Datei test.txt die folgenden Zeilen:

1
2
3
4
5
6
7
8
9

Aber der obige Befehl shuf erzeugte die folgende Ausgabe:

3
4
6
5
1
8
2
7
9

So können Sie sehen, dass die Zeilen gemischt wurden.

Q2. Wie kann man die Anzahl der Zeilen in der Ausgabe begrenzen?

Wenn Sie die Anzahl der Zeilen in der shuf-Ausgabe begrenzen möchten, verwenden Sie die Befehlszeilenoption -n, bei der Sie eine Zahl übergeben müssen, die die maximale Anzahl der Zeilen darstellt, die Sie in der Ausgabe haben möchten.

Zum Beispiel:

shuf -n 3 test.txt

Der obige Befehl erzeugte die folgende Ausgabe:

6
4
9

Q3. Wie erlaube ich die Wiederholung von Zeilen in der Ausgabe?

Angenommen, die Eingabedatei enthält 9 Zeilen, aber Sie möchten, dass shuf mehr Zeilen als die Ausgabe erzeugt (unter Verwendung der oben beschriebenen Option -n). Dies kann mit der Option -r erfolgen.

-r, --repeat
              output lines can be repeated

Wenn Sie also möchten, dass shuf 25 Zeilen in der Ausgabe erzeugt, führen Sie den folgenden Befehl aus:

shuf -r -n 25 test.txt

Hier ist die Ausgabe dieses Befehls:

6
8
4
5
9
3
3
1
2
5
7
5
9
5
8
5
2
8
8
7
4
4
8
5
3

Q4. Wie bringt man shuf dazu, Eingabeargumente als Zeilen zu behandeln?

Verwenden Sie dazu die Befehlszeilenoption -e. Hier ist ein Beispiel:

shuf -e 1 2 3 4 5 6 7 8 9

Hier ist die Ausgabe dieses Befehls:

9
1
7
8
6
2
3
5
4

Schlussfolgerung

Zugegeben, shuf ist nicht die Art von Werkzeug, das Sie jeden Tag benötigen würden, aber es schadet nicht, sich mit diesem Dienstprogramm vertraut zu machen, zumal seine Lernkurve nicht so steil ist. Wenn Sie alles, was wir hier besprochen haben, geübt haben, besuchen Sie die Manpage des Tools, um mehr darüber zu erfahren.


Linux
  1. Linux expand Command Tutorial für Anfänger (mit Beispielen)

  2. Linux-Factor-Befehls-Tutorial für Anfänger (mit Beispielen)

  3. Linux yes Command Tutorial für Anfänger (mit Beispielen)

  4. Linux nproc Command Tutorial für Anfänger (mit Beispielen)

  5. Linux-Benutzer Befehls-Tutorial für Anfänger (mit Beispielen)

Linux sha1sum Command Tutorial für Anfänger (mit Beispielen)

Linux Look Command Tutorial für Anfänger (mit Beispielen)

Linux-Lsattr-Befehls-Tutorial für Anfänger (mit Beispielen)

Linux tload Command Tutorial für Anfänger (mit Beispielen)

Linux znew Command Tutorial für Anfänger (mit Beispielen)

Linux tr Command Tutorial für Anfänger (mit Beispielen)