Bash Linux Zufalls-CLI-Passwortgenerator und `

Bash Linux Zufalls-CLI-Passwortgenerator und `

Ich habe vor Kurzem diese Methode zum Generieren eines 9-stelligen Passworts aus der Linux-Eingabeaufforderung in Bash entdeckt:

< /dev/urandom tr -dc A-Za-z0-9_ | head -c9

Was <macht?

Antwort1

Falls Sie sich fragen, dies ist nur einweniger gebräuchliche Verwendungdes Eingabeumleiters. Die Shell verwendet die angegebene Datei als Eingabe und gibt sie standardmäßig an stdout aus.

Die Aufschlüsselung des Befehls, den Sie haben:

< /dev/urandom tr -dc A-Za-z0-9_ | head -c9

<: Eingabeumleitung. Shell gibt Inhalt der Datei aus (/dev/urandom)

tr: aus tr --help:

Übersetzen, komprimieren und/oder löschen Sie Zeichen aus der Standardeingabe und schreiben Sie sie in die Standardausgabe.

Die Optionen -dc sind gleichbedeutend mit --delete --complement, was bedeutet, dass das Komplement des folgenden Zeichensatzes gelöscht wird, also alle Zeichen, die NICHT im Satz enthalten sind. Das schließt in Ihrem Beispiel nicht alphanumerische Zeichen und Unterstriche aus.

head: Drucken Sie die ersten paar Zeilen von etwas (Standard 10). Der Schalter -c9 gibt an, wie viele Bytes statt Zeilen gedruckt werden sollen.

Setzen Sie alles zusammen und Sie erhalten: „Drucken Sie mir die ersten 9 alphanumerischen oder Unterstrich-Bytes von /dev/urandom aus.“ :)

Antwort2

Versuch es mal < /usr/include/stdio.h head– es sollte „Datei“ heißen, Alter.

Falls Sie eine Programmausgabe als Datei benötigen, können Sie dies folgendermaßen tun:vim <(echo test)

verwandte Informationen