Как я могу конвертировать из hex в base64?


27

Кто-нибудь может порекомендовать простой способ / инструмент для преобразования hex в base64?

Я использую Linux и OS X.


Вы хотите конвертировать Hex или Binary в Base64? Сценарий или это сделка с одним выстрелом?
Крис С

Ответы:


50

Используйте xxd с -rаргументом (и, возможно, -pаргументом) для преобразования из шестнадцатеричной формы в обычный двоичный файл / октеты и base64 для преобразования двоичной формы / октета в base64.

Для файла:

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

Для строки шестнадцатеричных чисел:

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

4

Ну, это зависит от точного форматирования ваших данных. Но вы можете сделать это с помощью простых сценариев оболочки:

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

Изменить по мере необходимости в зависимости от ваших данных.


3
Это преобразует строку десятичных цифр. Непонятно, хочет ли это ОП или он имеет шестнадцатеричные цифры и хочет, чтобы байты, которые они представляют, были преобразованы в base64.
Приостановлено до дальнейшего уведомления.

1

Хорошо, если ваши шестнадцатеричные данные - это шестнадцатеричное представление файла, просто прикрепите файл к сообщению outlook или thunderbird, а затем сохраните сообщение где-нибудь. Затем откройте файл в текстовом редакторе и увидите код B64 :)

Он работает в Windows, но я думаю, что это универсальный способ, поскольку при сохранении в формате .EML вложение кодируется в B64.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.