Przekształć informacje szesnastkowe na binarne za pomocą polecenia systemu Linux

91

Mam ten plik binarny w moim systemie Linux ...

 udit@udit-Dabba ~ $ cat file.enc
 Salted__s�bO��<0�F���Jw!���]�:`C�LKȆ�l

Używając polecenia hexdump, widzę jego informacje w następujący sposób:

 udit@udit-Dabba ~ $ hexdump -C file.enc
 00000000  53 61 6c 74 65 64 5f 5f  1b 73 a1 62 4f 15 be f6  |Salted__.s.bO...|
 00000010  3c 30 cc 46 ee 10 13 11  84 bf 4a 77 21 a4 84 99  |<0.F......Jw!...|
 00000020  0e 5d ef 11 18 3a 60 43  a0 4c 4b 1e c8 86 e6 6c  |.]...:`C.LK....l|
 00000030

Teraz otrzymuję plik w innym systemie, którego zawartość jest następująca:

 53 61 6c 74 65 64 5f 5f  1b 73 a1 62 4f 15 be f6
 3c 30 cc 46 ee 10 13 11  84 bf 4a 77 21 a4 84 99
 0e 5d ef 11 18 3a 60 43  a0 4c 4b 1e c8 86 e6 6c

Muszę znaleźć te same dokładne informacje binarne z tego zrzutu heksowego.

Jak mogę to zrobić?

Jeśli nie ma do tego przełącznika, kod C również będzie działał dobrze.

(Ale preferowane jest polecenie Linuksa z jakimś przełącznikiem)

Ograniczenie:

Informacje binarne w pliku są wyprowadzane przez algorytm szyfrowania, więc zawartość powinna dokładnie pasować ...

Udit Gupta
źródło
12
Spójrz na xxd
user786653
@ user786653 Thnx Pomogło mi to wiedzieć, -ra nie -pi potrzebowałem tego wkrótce ... więc opublikowałem pytanie
Udit Gupta
1
Na ten sam temat zobacz także: stackoverflow.com/questions/2614764/hex-dump-of-file-in-bash
Yves Martin

Odpowiedzi:

148

Jak zasugerował @ user786653, użyj xxd(1)programu:

xxd -r -p input.txt output.bin
Adam Rosenfield
źródło
8
aby dodać użycie echo "hex" | xxd -r -p - do pobierania danych wejściowych ze standardowego wyjścia
potokowego
3
Może być również użyty do uzyskania binarnych echo something | sha256sum | xxd -r -p -
skrótów
Pomógł mi przekonwertować hex na bin dla plików PDF
Kaymaz