我有一个base64字符串,其中包含不可打印的字符。
我想修改可打印的一个。但我不能使用base64 -d,因为我将失去不可打印的。
这是一个允许我这样做的命令吗?
示例,如果我这样做
echo "base64 string" | base64 -d | od -c
我获得了
0000000 004 002 254 334 0 202 003 362 \f \0 0 202 003 354 0 202
0000020 003 350 002 002 006 021 0 - 0 ) 0 036 002 004 A 343
0000040 271 | 002 003 \0 352 233 002 002 021 340 002 002 \0 232 002
0000060 001 . 004 006 \0 \f ) 346 353 323 \f \a J 0 0 6
0000100 0 6
等...
假设我想用J 0 1修改J 0 0 ......我可以这样做吗?
更新:
目前解决方案已转换并将base64解码输出到文件中,然后使用HEX编辑器进行编辑。
因此,如果您知道Linux中包含的一些命令行HEX Editor本机,请告诉我
答案 0 :(得分:1)
当我在我的系统上尝试时,我得到了
base64:输入无效
由于你只想要可打印的字符,我怀疑你想要的是base64编码的字符串。
如果是这样,您应该滑动-d
选项:
echo "base64 string" | base64 | od -c
如果您确实想将某些字符更改为其他字符,可以使用tr
(翻译)命令:
来自man tr
:
tr
- 翻译或删除字符