$ echo -n "apfjxkic-omyuobwd339805ak:60a06cd2ddfad610b9490d359d605407" | base64
YXBmanhraWMtb215dW9id2QzMzk4MDVhazo2MGEwNmNkMmRkZmFkNjEwYjk0OTBkMzU5ZDYwNTQw
Nw==
Run Code Online (Sandbox Code Playgroud)
输出在 之前有一个返回Nw==。在 Linux 中生成 base64 的正确方法是什么?
Kam*_*ski 254
尝试:
echo -n "apfjxkic-omyuobwd339805ak:60a06cd2ddfad610b9490d359d605407" | base64 -w 0
Run Code Online (Sandbox Code Playgroud)
来自man base64:
-w,--wrap=COLS
在COLS字符后换行编码行(默认76)。使用0以禁用自动换行。
76成为默认值的一个可能原因是 Base64 编码提供了一种在电子邮件和 Usenet 帖子中包含二进制文件的方法,该方法旨在供使用 80 个字符宽度的监视器的人类使用。默认为 76 个字符的宽度使该用例更容易。
Sco*_*der 77
这不如 Kamil 在支持-w选项的系统上的回答base64,但对于不可用的情况(例如 Alpine Linux、Arch Linuxinitramfs钩子等),您可以手动处理 base64 的输出:
base64 some_file.txt | tr -d \\n
Run Code Online (Sandbox Code Playgroud)
这是蛮力方法;我没有让程序合作,而是使用tr不分青红皂白地去除标准输出上的每个换行符。
| 归档时间: |
|
| 查看次数: |
117411 次 |
| 最近记录: |