命令base64
编码
macOS
base64 file
Linux
-w, –wrap=COLS wrap encoded lines after COLS character (default 76). Use 0 to disable line wrapping
base64 -w0 file
解码
base64 -d
问题
YWRtaW4= 是 admin 的 base64 编码。
- 解码(正确,这里之所以正确是因为base64过滤了。)
    
$ echo 'YWRtaW4=' | base64 -d admin[username@hostname ~]$ - 编码(错误,这是因为 echo 输出字符后会在后面再输出换行符。)
    
$ echo 'admin' | base64 YWRtaW4K 
解决方案
- 方法一:使用 
printf命令。$ printf 'admin' | base64 YWRtaW4= - 方法二:可以通过参数 
-n告诉 echo 不输出换行符。$ echo -n 'admin' | base64 YWRtaW4= - 方法三:可以通过参数 
-e告诉 echo 启用反斜杠转义的解释。$ echo -e 'admin\c' | base64 YWRtaW4=可用的转义符(来自 man echo):
- \ backslash
 - \a alert (BEL)
 - \b backspace
 - \c produce no further output
 - \e escape
 - \f form feed
 - \n new line
 - \r carriage return
 - \t horizontal tab
 - \v vertical tab
 - \0NNN byte with octal value NNN (1 to 3 digits)
 - \xHH byte with hexadecimal value HH (1 to 2 digits)