In diesem Tutorial werden wir verschiedene Möglichkeiten betrachten, wie wir zufällige Zeichenfolgen in Bash erzeugen können. Diese Funktionalität kann beim Erstellen von Benutzernamen, Kennwörtern oder Saatgutdaten nützlich sein.
Methode 1: MD5 Hash
Die allererste Methode, mit der wir eine zufällige Zeichenfolge in Bash generieren können, sind MD5 -Prüfsummen. Bash hat die $ Random -Variable, die eine Zufallszahl erzeugt. Wir können diesen Wert auf MD5SUM leiten, um eine zufällige Zeichenfolge zu erhalten.
Um zu veranschaulichen:
echo $ random | md5sum | Kopf -C 20; Echo;Die $ -zufällige Variable ist immer zufällig. Infolgedessen ist die MD5 -Prüfsumme immer zufällig.
Methode 2: UUID
Sie können auch den Kernel UUID -Generator in/proc/sys/kernel/random/uUid verwenden. Auf diese Weise erhalten Sie einen einzigartigen hexadezimalen Wert, den Sie mit dem Befehl SED und Kopf in eine zufällige Zeichenfolge konvertieren können:
Zum Beispiel:
Katze/Proc/sys/kernel/random/uUid | sed 's/[-] // g' | Kopf -C 20; Echo;Methode 3: Pseudo -Geräte
Sie haben den Ausdruck gehört: „Alles unter Linux ist eine Datei.Eines der Konzepte, die diese Aussage wahr machen, ist die Fähigkeit, Geräte als Dateien auszudrücken.
Dateien, die sich in /dev befinden, werden als Pseudo -Geräte bezeichnet. Sie dienen als Brücken zwischen dem Kernel und der Hardware. Eine der Dateien in diesem Verzeichnis ist die Uradom -Datei.
Die Urandom -Datei bietet eine Schnittstelle zum Zugriff auf den Kernel -Zufallszahlengenerator. Daher können wir es verwenden, um eine zufällige Zeichenfolge zu generieren, wie unten dargestellt:
Cat /Dev /Urandom | tr -dc '[: alpha:]' | fold -W $ 1: -20 | Kopf -n 1Wir leiten die Ausgabe von Urandom nach TR, was alphanumerische Werte erzeugt und dann die Werte auf die Breite von bis zu 20 Zeichen faltet. Schließlich bekommen wir eine ausgekleidete Schnur mit Kopf -n.
Ändern Sie den Wert von Head -n auf die Anzahl der erforderlichen Zeilen, um mehrere Werte gleichzeitig zu erhalten.
Cat /Dev /Urandom | tr -dc '[: alpha:]' | fold -W $ 1: -20 | Kopf -n 5Methode 4: Base64
Sie können auch das Dienstprogramm Base64 verwenden, um eine zufällige Zeichenfolge zu generieren. Beispielsweise können wir die Verwendung der $ Random -Variablen tun:
echo $ random | Base64 | Kopf -C 20; EchoMethode 5: OpenSSL Pseudo -Zufällige Bytes
Mit dem OpenSSL Rand -Befehl können Sie zufällige Bytes basierend auf dem angegebenen Typ generieren. Diese Typen umfassen Base63- und Hex -Werte.
Zum Beispiel:
OpenSSL Rand -hex 20Oder verwenden Sie Base64 als:
OpenSSL Rand -base64 21Abschluss
Abschließend bietet Bash verschiedene Dienstprogramme, mit denen Sie zufällige Zeichenfolgen generieren können. Daher müssen Sie nur verschiedene Tools kombinieren und einen cleveren Weg entwickeln, um zufällige Zeichenfolgen zu erhalten, die Ihren Anforderungen entsprechen.