23

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

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

3 ответа3

39

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

Для файла:

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

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

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

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

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

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

1

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .