Jak mogę przekonwertować z hexa na base64?


27

Czy ktoś może polecić prosty sposób / narzędzie do konwersji heksów na base64?

Używam Linuxa i OS X.


Chcesz przekonwertować Hex lub Binary na Base64? Skryptowalne czy to jednorazowa umowa?
Chris S

Odpowiedzi:


50

Użyj xxd z -rargumentem (i ewentualnie -pargumentem), aby przekonwertować z szesnastkowego na zwykły plik binarny / oktety i base64, aby przekonwertować formę binarną / oktetową na base64.

Dla pliku:

cat file.dat | xxd -r -p | base64

Dla ciągu liczb szesnastkowych:

echo "6F0AD0BFEE7D4B478AFED096E03CD80A" | xxd -r -p | base64

4

Zależy to od dokładnego formatowania danych. Ale możesz to zrobić za pomocą prostych skryptów powłoki:

 echo "obase=10; ibase=16; `cat in.dat`" | bc | base64 > out.dat

W razie potrzeby zmodyfikuj w zależności od danych.


3
Spowoduje to konwersję ciągu cyfr dziesiętnych. Nie jest jasne, czy tego chce OP, czy też ma cyfry szesnastkowe i chce, aby bajty, które reprezentują, zostały przekonwertowane na base64.
Wstrzymano do odwołania.

1

Cóż, jeśli twoje dane szesnastkowe są widokiem szesnastkowym pliku, po prostu dołącz plik do wiadomości programu Outlook lub Thunderbird, a następnie zapisz gdzieś wiadomość. Następnie otwórz plik za pomocą edytora tekstu i zobacz kod B64 :)

Działa w systemie Windows, ale myślę, że jest to uniwersalny sposób, ponieważ zapisywanie jako .EML załącznik jest kodowane do B64.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.