Bash-md5sum-Befehl

Sheeraz Gul 20 Juni 2023
  1. Bash-Befehl md5sum.
  2. Verwenden Sie md5sum für mehrere Dateien gleichzeitig in Bash
  3. Verwenden Sie md5sum, um geänderte Dateien in Bash anzuzeigen
  4. Verwenden Sie md5sum, um ungültige Hash-Werte in Bash zu identifizieren
  5. Holen Sie sich die md5sum-Ausgabe ohne Dateinamen in Bash
Bash-md5sum-Befehl

Dieses Tutorial zeigt, wie man den Befehl md5sum in Bash verwendet.

Bash-Befehl md5sum.

Der Befehl md5sum gibt die 32-Zeichen- und 128-Bit-Prüfsumme für die angegebene Datei aus. Dieser Befehl verwendet den MD5-Algorithmus, um die Datei in Hash umzuwandeln; Die Syntax für diesen Befehl ist unten.

md5sum [OPTION]... [FILEPATH]...

Versuchen wir, einen einfachen md5sum-Befehl für eine Textdatei mit folgendem Inhalt auszuführen:

Hello! this is md5sum command checking from delftstack.com

Der Dateiname ist delftstack1; Der md5sum-Befehl für diese Datei lautet:

md5sum delftstack1.txt

Der obige Befehl konvertiert die Datei delftstack1.txt in einen md5-Hash. Sehen Sie das Ergebnis:

7a09013df4a60cc5eda609d03008c547  delftstack1.txt

Wir können diese Ausgabe auch im BSD-Format anzeigen, indem wir die Option --tag verwenden.

md5sum --tag delftstack1.txt

Die Ausgabe für diesen Befehl lautet:

MD5 (delftstack1.txt) = 7a09013df4a60cc5eda609d03008c547

Das md5sum hat viele verschiedene Optionen, die verwendet werden können. Siehe Tabelle unten.

Linke Spalten Rechte Spalten
-b Wird verwendet, um das Ergebnis im Binärmodus zu lesen.
-c Wird verwendet, um MD5 aus bestimmten Dateien zu lesen und sie dann zu überprüfen.
–tag Wird verwendet, um die Ausgabe in einer Prüfsumme im BSD-Stil zu erhalten.
-t Verwenden Sie diese Option, um im Textmodus zu lesen, was ebenfalls standardmäßig der Fall ist.
–ignore-missing Wird verwendet, um den Berichtsstatus für fehlende Dateien zu ignorieren.
–quiet Wird verwendet, um den Druck von OK für jede erfolgreich verifizierte Datei zu stoppen.
–status Wird verwendet, um die Ausgabe von allem zu stoppen, bei dem der Statuscode Erfolg anzeigt.
–strict Wird verwendet, um Prüfsummendateien, die nicht ordnungsgemäß formatiert sind, von Nicht-Null zu verlassen.
-w Wird verwendet, um vor falsch formatierten Prüfsummendateien zu warnen.

Der Befehl md5sum kann auf verschiedene Arten verwendet werden, darunter die gleichzeitige Verwendung von md5 für mehrere Dateien, das Anzeigen nur der geänderten Dateien und das Identifizieren der ungültigen Hash-Werte.

Verwenden Sie md5sum für mehrere Dateien gleichzeitig in Bash

Mit dem md5sum können auch mehrere Dateien gleichzeitig validiert werden. Lassen Sie uns zwei weitere Textdateien erstellen und dann versuchen, alle drei Dateien gleichzeitig zu validieren.

delftstack2.txt:

Hello! this is md5sum command checking from delftstack.com file 2

delftstack3.txt:

Hello! this is md5sum command checking from delftstack.com file 3

Jetzt lautet der Befehl, um Hash für mehrere Dateien gleichzeitig zu erhalten:

md5sum delftstack1.txt delftstack2.txt delftstack3.txt > hashes

Der obige Befehl konvertiert nur Dateien in Hash und zeigt keine Ausgabe an. Um die Ausgabe anzuzeigen, müssen wir den folgenden Befehl ausführen:

md5sum --check hashes

Der obige Befehl zeigt an, ob die Dateien erfolgreich in einen Hash konvertiert wurden. Siehe die Ausgabe:

delftstack1.txt: OK
delftstack2.txt: OK
delftstack3.txt: OK

Verwenden Sie md5sum, um geänderte Dateien in Bash anzuzeigen

Der Befehl md5sum kann auch die geänderten Dateien anzeigen, während md5sum auf mehrere Dateien angewendet wird. Verwenden Sie zunächst den folgenden Befehl, um die Datei zu ändern:

echo "!" >> delftstack1.txt

Der obige Befehl ändert die Datei delftstack1.txt. Lassen Sie uns nun die modifizierten Dateien mit den md5sum-Optionen anzeigen.

Siehe den Befehl:

md5sum --quiet --check hashes

Der obige Befehl sucht nach geänderten Dateien und gibt den Namen in der Ausgabe aus. Siehe die Ausgabe:

delftstack1.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match

Verwenden Sie md5sum, um ungültige Hash-Werte in Bash zu identifizieren

Wir können auch den Befehl md5sum mit Optionen verwenden, um die ungültigen Dateien zu identifizieren. Dazu verwenden wir die Option -warn und den Befehl sed, um zusätzliche Zeichen einzufügen, um eine Datei ungültig zu machen.

Siehe den ersten Befehl:

sed -i '1s/.*/a&/' hashes

Der obige Befehl fügt der ersten Zeile der Ausgabe Auszugszeichen hinzu. Sehen Sie sich die Ausgabe für diesen Befehl an:

sed: -e expression #1, char 2: extra characters after command

Lassen Sie uns nun mit dem Befehl md5sum und den Optionen --warn nach dem ungültigen Hash-Wert suchen. Siehe den Befehl:

md5sum --warn --check hashes

Das Obige zeigt die Datei mit ungültigen Hash-Werten in der Ausgabe. Siehe die Ausgabe:

delftstack1.txt: FAILED
delftstack2.txt: OK
delftstack3.txt: OK
md5sum: WARNING: 1 computed checksum did NOT match

Holen Sie sich die md5sum-Ausgabe ohne Dateinamen in Bash

Wie wir sehen können, gibt md5sum die Hash-Ausgabe mit ihrem Dateinamen zurück, aber manchmal ist es erforderlich, die Ausgabe ohne Dateinamen zu erhalten, damit wir sie weiter verwenden können. Die Lösung dafür ist der Befehl awk, eine domänenspezifische Sprache, die für Textverarbeitung, Datenextraktion und Reporting-Tools verwendet wird.

Befolgen Sie die folgenden Punkte, um die Ausgabe ohne Dateinamen in Bash zu erhalten:

  1. Wir weisen den Ausgang einer Variablen zu.
  2. Zuerst führen wir md5sum auf der angegebenen Datei aus, verwenden den awk-Befehl und geben $1 aus.

Siehe den Befehl:

DemoMD5= md5sum delftstack1.txt | awk '{ print $1 }'

Das obige gibt nur die Hash-Ausgabe von der Ausgabe md5sum zurück.

Ausgang:

698ac7ad395a9c887b1abf3c9ded7abe

Wenn Sie den Befehl awk nicht verwenden möchten, gibt es eine andere Methode, mit der wir die Hash-Ausgabe von md5sum direkt ohne den Dateinamen erhalten können. Die Ausgabe md5sum weisen wir einem Array zu und drucken es dann aus.

Siehe die Befehle:

DemoMD5=($(md5sum delftstack1.txt))
echo $DemoMD5

Die obigen Befehle erhalten auch direkt die Hash-Ausgabe ohne den Dateinamen für md5sum. Siehe die Ausgabe:

698ac7ad395a9c887b1abf3c9ded7abe
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook