Hallo
ich will mit folgendem Shellscript die SHA512 Checksummen aller Dateien
in einem Verzeichnis berechnen und in der sha512.sum Datei ausgeben.
1 | find . -type f >filelist1.txt #make filelist as file
|
2 | sed 's|^..|"|' <filelist1.txt >filelist2.txt #replace . by " in every line
|
3 | sed ':a;N;$!ba;s|\n|"\n|g' <filelist2.txt >filelist1.txt #add " before every newline
|
4 | sed '$s/$/"/' <filelist1.txt >filelist2.txt #add " at last char
|
5 | sed '1,1d' <filelist2.txt >filelist1.txt #delete first line
|
6 |
|
7 | while read zeile
|
8 | do
|
9 | echo $zeile
|
10 | sha512sum $zeile
|
11 | done <filelist1.txt >sha512.sum
|
Wenn ich das Script nun ausführe, so findet sha512sum die Datei nicht
und gibt <<sha512sum: "Irgendeine Datei": Datei oder Verzeichnis nicht
gefunden>> zurück, obwohl echo $zeile das richtige Datei zurückgibt.
Gibt man die von echo ausgegebene Datei manuell in der Shell ins
sha512sum-Programm ein, so funktioniert sha512sum.
Irgendwer eine Idee, warum das nicht funktioniert?