如何在Shell脚本中十六进制到Base64(预期输出不同)?

时间:2019-03-28 14:07:35

标签: shell scripting

新手IT Shell脚本专家在这里。

我希望将一些HEX输入转换为base64。我正在尝试执行以下操作,但是您可以看到输出是不同的。

$ echo -n 6B255C065F0E5F105F115F0E0c58583C58583C583C3C5858585F100B31323334355F110355544F | base64
NkIyNTVDMDY1RjBFNUYxMDVGMTE1RjBFMGM1ODU4M0M1ODU4M0M1ODNDM0M1ODU4NTg1RjEwMEIz
MTMyMzMzNDM1NUYxMTAzNTU1NDRG

我想知道如何使用下面的预期输出获得此编码。 输入:6B255C065F0E5F105F115F0E0c58583C58583C583C3C5858585F100B31323334355F110355544F 输出: ayVcBl8OXxBfEV8ODFhYPFhYPFg8PFhYWF8QCzEyMzQ1XxEDVVRP

谢谢。

1 个答案:

答案 0 :(得分:0)

使用xxd

$ xxd -p -r <<<'6B255C065F0E5F105F115F0E0c58583C58583C583C3C5858585F100B31323334355F110355544F' | base64
ayVcBl8OXxBfEV8ODFhYPFhYPFg8PFhYWF8QCzEyMzQ1XxEDVVRP
$
$ echo -n '6B255C065F0E5F105F115F0E0c58583C58583C583C3C5858585F100B31323334355F110355544F' | xxd -p -r | base64
ayVcBl8OXxBfEV8ODFhYPFhYPFg8PFhYWF8QCzEyMzQ1XxEDVVRP