Używam polecenia
find . -type f -exec sha256sum {} \; > sha256SumOutput
mieszać każdy plik w hierarchii folderów. Niestety sha256sum
nie pobiera nazw plików find
w alfabetycznym odrze. Jak to może zostać naprawione?
Chciałbym, aby zostały uporządkowane przed ich zaszyfrowaniem, aby były zaszyfrowane w kolejności alfabetycznej (ma to powód).
sort
posortowania listy i potok do sha256sumOdpowiedzi:
Za pomocą niektórych rur i
sort
Wyjaśnienie
Od
man find
Od
man sort
Od
man xargs
Przykład
Wartości w pierwszej kolumnie są takie same, ponieważ pliki nie mają żadnej zawartości w moim teście.
źródło
Powinieneś być w stanie przesyłać dane wyjściowe z
find
dosort
.źródło
-exec
przełącznika.find
ma jakiś sposób na alfabetyczne wyjście, ale potokowanie do,sort
a następnie używaniexargs
dałoby oczekiwany wynik.find . -type f | sort | xargs sha256sum
. Chociaż miałby problemy z podkatalogami.find . -type f | awk -F/ '{print $NF, $0}' | sort | awk '{print $2}' | xargs sha256sum
xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option sha256sum: invalid option -- 'l' Try 'sha256sum --help' for more information.
.