LinuxDown

LinuxDown.com
Linux系统下载网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

一下Base64编码和解码,以便大家理解与学习

2023年3月15日 215点热度

linux 修改默认编码_linux系统编码格式_linux 文件utf 8编码

你们好,我是良许。

众所周知,编码是将数据转换为有效传输或储存所需格式的过程。相反,解码是将编码数据转换回其原始格式的过程。昨晚在这儿向你们介绍一下Base64编码和解码linux操作系统好吗,便于你们理解与学习。

Base64是将二补码数据转换为ASCII的编码方法之一。一般,当二补码数据传输到难以正确处理二补码数据的系统(基于文本的系统)时会出现传输问题,例如信息在传输过程中的遗失或破损。在这些情况下,Base64编码就可以防止出现上述情况。

Base64编码的一些用途是:

●数据压缩

●数据隐藏

●以另一种格式传输数据

对于编码数据,Base64只准许使用字母、数字和=符号。诸如,c2FtcGxlCg==是有效的编码数据,而HV3.Zh2J==不是有效的编码数据。

在本文中,我们将解释怎样使用Base64命令对字符串或文件中的数据进行编码和解码。

Base64句型

下边是使用Base64进行编码的句型:

$ base64 [OPTION] [FILE]

Base64选项

可以与Base64命令一起使用的一些命令行选项包括:

解码文件或字符串:

-d or --decode

显示有关Base64用法的帮助信息:

 --help

解码时使用下边选项可忽视非字母字符:

 -i, --ignore-garbage

显示版本信息:

 --version

编码字符串

我们可以使用Base64命令轻松地对字符串进行编码。比如,要将示例文本“WelcometoLinux”以Base64形式编码linux系统编码格式,可以使用如下命令:

 $ echo “Welcome to Linux” | base64

此命令将使用Base64对字符串中的文本进行编码,并将编码的文本复印到标准输出,如下边的屏幕截图所示:

也可以使用重定向操作符(>)将编码输出保存到文件中,而不是复印到标准输出。以下命令将对文本进行编码并将输出保存到名为“encodedfile.txt“的文件中:

$ echo “Welcome to Linux” | base64 > encodedfile.txt

要查看编码文件,可以使用cat命令:

 $ cat encodedfile.txt

解码字符串

也可以使用–decode或-d选项解码Base64编码的文本。比如,要解码Base64编码文本“V2VsY29tZSB0byBMaW51eAo=”,命令是:

 $ echo “V2VsY29tZSB0byBMaW51eAo=” | base64 --decode

这个命令将解码Base64中的编码文本,以及在标准输出中复印原始文本,如右图所示:

也可以使用重定向操作符(>)将解码后的输出保存到文件中,而不是复印到标准输出。以下命令可以解码编码文本并将原始文本保存到名为“decodedfile.txt“的文件中:

 $ echo “V2VsY29tZSB0byBMaW51eAo=” | base64 –decode > decodedfile.txt

编码文本文件

Base64命令也可用于对文本文件进行编码。如,对名为“testfile.txt”进行编码,则命令为:

 $ base64 testfile.txt

此命令将对指定的文本文件进行编码,并在标准输出上复印其编码方式,如下边的屏幕截图所示。

也可以使用重定向操作符(>)将解码后的输出保存到文件中,而不是复印到标准输出。使用以下命令可以解码编码文本并将原始文本保存到名为“decodedfile.txt的文件,这个文件可以使用cat命令查看。该命令是:

$ base64 -d encodedfile.txt > decodedfile.txt

编码用户输入

使用Base64编码,可以对任何用户提供的数据进行编码。因此linux 分区,我们须要创建一个接受用户输入的脚本,使用Base64编码对其进行编码,并在标准输出上复印编码的数据.

使用以下代码创建脚本“test.sh”:

 #!/bin/bash
# Print message to ask for input
echo "Provide Some data to encode"
# Save the input to a variable named “data”
read data
# Encode using base64 encoding and save the output to a variable “encod_data”
encod_data=`echo -n $data | base64`
# Print encoded output
echo "Encoded text is : $encod_data"

按如下形式运行脚本:

 $ ./test.sh

运行脚本后,系统将要求你输入要编码的数据。输入一些数据后并按Enter键,就可以在屏幕上接收编码输出了。

验证用户秘钥

如今让我们看一个Base64解码的反例。我们将使用Base64解码来检测用户的有效性。因此,我们须要创建一个脚本,向用户恳求秘钥。该秘钥将首先通过Base64解码进行解码,之后它将匹配输入秘钥与预定义秘钥。假如用户输入的秘钥与预定义的秘钥匹配,则会复印“您已输入有效秘钥”消息,否则linux系统编码格式,在屏幕上复印的则是“您输入的秘钥无效”。

使用以下代码创建脚本“test1.sh”:

#!/bin/bash
# Print message to ask for input
echo "Enter your key"
# Save the key provided by the user to a variable named "key"
read key
# Decode the encoded key (QWJjMTIzCg) and save the output to a variable named “orig_key”
orig_key=`echo 'QWJjMTIzCg==' | base64 --decode`
# Compare the key entered by the user with the decoded key
if [ $key == $orig_key ]; then
#if key matches, print this:
echo "You have entered a valid key"
else
#if key does not match, print this:
echo "The key you have entered is not valid"
fi

linux系统编码格式_linux 修改默认编码_linux 文件utf 8编码

按如下形式运行脚本:

 $ ./test1.sh

运行脚本后,系统将要求你提供秘钥,键入秘钥并按Enter键。倘若输入的秘钥与预定义的解码秘钥匹配,您将收到“您已输入有效秘钥”的消息,否则屏幕中将显示“您输入的秘钥无效”的消息。

linux 文件utf 8编码_linux 修改默认编码_linux系统编码格式

以上就是如何以命令行来使用Base64对字符串或文件进行编码和解码。结果可以复印在标准输出上,也可以保存在文件中。并且,值得注意的是,编码与加密不同,编码很容易泄漏编码的数据,因而不建议使用编码传输敏感数据。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: base64 编码转换
最后更新:2023年3月15日

Linux系统下载网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux系统下载网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
高速无线网络畅享,tplink300M Linux驱动带你飞 Linux系统的秘密技巧:轻松修改文件创建日期 Windows远程连接Linux,轻松跨平台操作 关于linux下获取文件的创建时间与实战的相关资料 树莓派Linux系统:极简体验大比拼 Linux系统如何修改文件的时间touch命令的描述指令? Linux上运行exe文件的软件,你绝对不能错过这些 蓝牙耳机怎么连接电脑?笔记本蓝牙适配器的开启方法 全新Linux局域网聊天软件 系统启动时自动运行程序的三种功能方法介绍 Linux系统下载攻略:掌握这些技巧,轻松get Linux查看端口占用情况linux命令:ps、grep、kill 剖析ARM Linux内核:奥秘与精髓解读 康华:Linux内核空间和用户空间的区别及用法 LinuxWine:使用关关采集器的最佳选择 Linux对段式内存映射的支持 Linux课程报告对比:成为顶级Linux系统管理员的秘诀 中通过几个宏拓展的实现来完成设备号的分解和合成 Linux计划任务工具对比:Cron及更多 快速上手Linux系统的基本概念、常用命令和应用
IMAP和POP有什么区别?如何配置邮件客户端使用IMAP高速无线网络畅享,tplink300M Linux驱动带你飞unix系统和linux系统 Unix和Linux系统的经验技巧,你了解吗?lastb列出登入系统失败的用户相关信息补充说明命令嵌入式操作系统的特点及发展前景分析快速定位目标文件,Linux文档管理软件!Linux操作系统下载:选择适合你的发行版获取UbuntuLinux操作系统的PDF文件文件的基础知识介绍Linux下Python开发经验与技巧分享Linux,下的日志文件系统的载体介绍-苏州安嘉Linux编程:系统IO速度稳定性评测一种嵌入式Linux操作系统的构建方法:王晓辉,孙新贺Linux轻松下载文件,简单操作!Linux远程主机的指定目录内容的使用命令Linux解压RAR神器,一招搞定zxvf命令嵌入式Linux文件系统的结构是基于树状的根在顶部深入解析Linux网络内核的开发技巧英特尔发布migrate-pages函数中实现页面迁移的批量TLB刷新Win7上安装Linux虚拟机软件的经验分享!2018.11.05linux.pngLinux发行版线路图
红帽认证工程师(RHCA)红帽企业架构师课程介绍 grep命令的基本语法格式:grep命令基本格式介绍 LinuxMatlab2023b下载经验分享 下载Linux系统最新版,指南帮你get! 有个发行版居然模仿起了Win11系统,还内置安卓虚拟机 嵌入式工程师的修炼日记——学习设计中的日记 SUSELinux12SP5的安装步骤及安装方法 Linux解压gz文件,快速高效的操作技巧! Linux操作系统中最通用的全屏幕文本编辑器 网络安装Linux系统:多种方法全解析 linuxlinux有哪些版本?linux有什么版本 Linux系统连接服务器:从入门到精通的技巧! 编译新的Linux内核给X86内核源码根目录内核移植成功 学会驱动设备:Linux入门到精通 Linux系统QQ客户端安装攻略 1.常见Linux发行版的Linux内核内部功能介绍及解决办法 支持多重引导USB启动盘制作工具多如牛毛 Linux配置Android开发环境:简单指南 linux系统 2018年03月24日10:55:20Linux系统的多种优势 Fedora新建文件,轻松便捷!
标签聚合
命令 应用 软件 电脑 操作 文件目录 文件 内核 linux系统 linux服务器
书籍
课程
技术群
技术干货大合集↓
  • 2023年9月 / 92篇
  • 2023年8月 / 122篇
  • 2023年7月 / 122篇
  • 2023年6月 / 119篇
  • 2023年5月 / 123篇
  • 2023年4月 / 113篇
  • 2023年3月 / 265篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2023 LinuxDown.com ALL RIGHTS RESERVED.

京ICP备14023444号-2