Verständnis des Bash Shuf -Befehls

Verständnis des Bash Shuf -Befehls

„Der SHUF -Befehl ist hilfreich, um zufällig die Eingangslinien in die Standardausgabe zu mischen. Der SHUF -Befehl nimmt Eingaben von Dateien oder die Standardeingabe an, randomisiert die Eingabe und ergibt Ausgabe. Es funktioniert so, wie Sie Karten mischen und eine zufällige Ausgabe ziehen oder die Karten zufällig anordnen.

Der Shuf funktioniert auf drei Arten. Sie können es als Bereich, Liste oder Datei Shuf verwenden. Lassen Sie uns die verschiedenen Möglichkeiten sehen, wie Sie den SHUF -Befehl verwenden können.”

Verwenden Sie den Befehl bash shuf

Shuf ist Teil der GNU CoreUtils, und Sie können seine Hilfeseite öffnen, um die verschiedenen Optionen anzuzeigen, die Sie verwenden können.

Wenn Sie den SHUF -Befehl ohne Argument ausführen, erwartet er Eingaben in der Befehlszeile. Sobald Sie drücken Strg + d, Es gibt die randomisierte Ausgabe Ihrer Eingabe. Schauen Sie sich das Bild unten an, wie das in Aktion funktioniert.

Außerdem können Sie Shuf kombinieren, indem Sie die Ausgabe eines anderen Befehls verleihen. Zum Beispiel können Sie die Auflistung der Dateien im aktuellen Verzeichnis mithilfe der Verzeichnis mischen ls.

Beachten Sie in der obigen Ausgabe, wie die Verwendung von Shuf die Auflistung des Inhalts unseres aktuellen Verzeichnisses randomisiert.

1. Verwenden Sie Shuf als Datei

Angenommen, Sie haben eine Datei, die Sie randomisieren möchten. Sie können den SHUF -Befehl verwenden, gefolgt von der Datei, die Sie mischen möchten. In diesem Fall wird der Inhalt der Datei gemischt, und die Ausgabe wird auf der Standardausgabe angezeigt.

Sie können die Syntax unten verwenden.

$ shuf Dateiname

Im obigen Beispiel mischen wir alle Zeilen in der Datei. Verwenden Sie jedoch die -N Flagge, Sie können die Anzahl der Zeilen hinzufügen, die Sie mischen möchten. Lassen Sie uns drei Zeilen randomisieren und sehen, welche Ausgabe wir erhalten.

$ shuf -n 3 Dateiname

Beachten Sie, wie wir mit jedem Shuffle eine zufällige Ausgabe erhalten.

2. Shuf als Reichweite verwenden

Sie können Eingänge in einem bestimmten Bereich mischen. Sie müssen nur die untere und die Obergrenze hinzufügen. Shuf wird dann die Eingabe im angegebenen Bereich randomisiert, vorausgesetzt, Sie fügen das hinzu -ich Möglichkeit.

Lassen Sie uns ein Beispiel für die Randomisierung von Zahlen von 11 bis 19 haben. Dafür werden wir den Befehl unten ausführen.

$ shuf -i 11-19

Wenn Sie nur eine Ausgabe aus dem randomisierten Bereich erhalten möchten, können Sie die verwenden -N Wie nachfolgend dargestellt.

$ shuf -i 11-19 -n 1

Mit dem -n können Sie nur einzigartige Ausgabe erhalten. Fügen Sie jedoch das -r -Flag hinzu, wenn Sie die Wiederholung der randomisierten Ausgabe zulassen möchten. Auf diese Weise ermöglichen Sie es, dass die Ausgabe beim Anzeigen von mehr als einer Zeile den gleichen Wert hat.

Hier ist ein Beispiel dafür, einen Bereich zu mischen und drei Ausgänge anzuzeigen, die sich wiederholen können.

3. Verwenden Sie Shuf als Liste

Wenn Sie Argumente als Liste in Ihrem SHUF -Befehl hinzufügen möchten, verwenden Sie die -e Möglichkeit. Die Argumente, die dem -e folgen, werden als Eingabe behandelt.

Hier ist ein Beispiel für die Randomisierung einer Liste von Alphabetnummern.

Sie können auch eine Liste randomisieren und entscheiden, nur zwei Ausgangsleitungen mit der Ausgabe auszugeben -N Wie in der folgenden Ausgabe.

Schreibausgabe in eine Datei

Wenn Sie die randomisierte Ausgabe Ihrer Datei, Ihren Bereich oder Ihre Liste speichern möchten, können Sie die verwenden gefolgt vom Namen Ausgabedatei.

Lassen Sie uns einen Bereich randomisieren und in einer neuen Datei speichern, wie unten gezeigt.

Abschluss

Das Mischen von Eingängen in Linux ist dank des SHUF -Befehls möglich möglich. Diese Anleitung hat den Befehl Bash Shuf eingeführt und Beispiele für die Verwendung mit verschiedenen Optionen, um verschiedene Ausgänge zu erhalten. Ich hoffe, Sie haben den Artikel hilfreich gefunden.