Linux常用命令学习-base64

base64: 编码或解码文件、标准输入到标准输出。base64编码之后的字符包括大小写字母各26个,加上10个数字,和加号「+」,斜杠「/」,一共64个字符,等号「=」用来补位,根据RFC 822规定,每76个字符,还需要加上一个回车换行。

转换方式:将三个byte的数据,先后放入一个24bit的缓冲区中,先来的byte占高位。数据不足3byte的话,缓冲区剩下的bit用0补足。然后,每次取出6(2的六次方 = 64)个bit,按照其值选择ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/中的字符作为编码后的输出。不断进行,直到全部输入数据转换完成,如果原字符串byte个数对3取余等于1,1byte转成8bit,24bit中其他位补0,转换时,能取出两个带数据6bit,剩余两个6bit转换时用两个=代替,如果原字符串byte个数对3取余等于2,2byte转成16bit,24bit中其它位补0,转换时,能取出三个带数据6bit,剩余一个6bit转换时用一个=代替,这样做是为了在还原时保证原数据的完整性。解码的流程和编码的流程正好相反。

具体参数如下:

-d, --decode  :decode data,解码数据

-i, --ignore-garbage :when decoding, ignore non-alphabet characters

-w, --wrap=COLS:wrap encoded lines after COLS character (default 76).  Use 0 to disable line wrapping

参数中如果没有文件或为-,表示从标准输入中读取数据

示例1:

转base64:echo "abc"|base64

解base64:echo ""|base64 -d

示例2(从标准输入接收数据):

转base64:输入base64敲回车,进入输入页面,输入待转换字符按CTRL+D结束输入,并将转换结果输出到标准输出。

解base64:输入base64 -d敲回车,进入输入页面,输入待解码字符串按CTRL+D结束输入,并将解码结果输出到标准输出。

示例3:

将文件的内容作为输入进行base64编码:base64 FILE_NAME

将文件的内容作为输入进行base64解码:base64 -d FILE_NAME

当然也可以将输出结果重定向到到文件中。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值