【busybox记录】【shell指令】md5sum

目录

内容来源:

【GUN】【md5sum】指令介绍

【busybox】【md5sum】指令介绍

【linux】【md5sum】指令介绍

使用示例:

128位MD5 - 默认输出

128位MD5 - 将每个文件当做二进制处理

128位MD5 - 从文件中读取MD5值并做检查

128位MD5 - 创建一个BSD风格的校验和,并做校验

128位MD5 - 输出的MD5值不会产生空行,以NULL结尾,方便其他程序处理

128位MD5 - 仅在验证校验和时有用,不报告丢失文件之类的失败

128位MD5 - 仅在验证校验和时有用,不为每个成功检查的文件生成`OK`消息

128位MD5 - 仅在验证校验和时有用,成功就成功,不成功就在失败处退出

128位MD5 - 验证校验和时,如果有错误,发出警告

128位MD5 - 验证校验和时,如果一个或多个输入行无效,在发出所有警告后退出

常用组合指令:

指令不常用/组合用法还需继续挖掘:


内容来源:

        GUN : Coreutils - GNU core utilities

        busybox v1.36.1 : 【busybox记录】【shell指令】基于的Busybox的版本和下载方式-CSDN博客

【GUN】【md5sum】指令介绍

md5sum:打印或检查MD5摘要
md5sum 为每个指定的文件计算128位的校验和(或指纹或消息摘要)。
在检测意外文件损坏时,MD5摘要比简单的CRC(由cksum命令提供)更可靠,因为意外地拥有两个MD5相同的文件的几率非常小。但是,我们不应该认为它可以防止恶意篡改:
虽然目前找一个带有MD5指纹的文件被认为是不可行的,但我们知道如何修改某些文件,包括数字证书,使它们在使用MD5摘要签名时显得有效。
要获得更安全的散列值,可以考虑使用SHA-2或b2sum。
参见第6.7节[sha2 utilities],第48页。
参见第6.5节[b2sum],第47页。
如果文件被指定为` - `或者没有文件被指定,md5sum会为标准输入计算校验和。
Md5sum还可以确定文件和校验和是否一致。
简介:
md5sum [option]... [file]...
md5sum对每个指定文件使用“Untagged output format”,如第6.3.1节[cksum输出模式]所述,第43页。
该程序接受第6.3.3节[cksum通用选项],第45页。参见第2章[常见选项],第2页。
退出状态为零表示成功,非零值表示失败。

【busybox】【md5sum】指令介绍

NA

【linux】【md5sum】指令介绍

[root@localhost bin]# md5sum --help
用法:md5sum [选项]... [文件]...
显示或检查 MD5(128位)校验和。如果没有指定文件,或者文件为"-",则从标准输入读取。-b, --binary         以二进制模式读取-c, --check		从文件中读取MD5 的校验值并予以检查--tag            创建一个 BSD 风格的校验和-t, --text		以纯文本模式读取(默认)-z, --zero           end each output line with NUL, not newline,and disable file name escapingThe following five options are useful only when verifying checksums:--ignore-missing  don't fail or report status for missing files--quiet          don't print OK for each successfully verified file--status         don't output anything, status code shows success--strict         exit non-zero for improperly formatted checksum lines-w, --warn           warn about improperly formatted checksum lines--help		显示此帮助信息并退出--version		显示版本信息并退出The sums are computed as described in RFC 1321.  When checking, the input
should be a former output of this program.  The default mode is to print a
line with checksum, a space, a character indicating input mode ('*' for binary,
' ' for text or where binary is insignificant), and name for each FILE.Note: There is no difference between binary mode and text mode on GNU systems.GNU coreutils 在线帮助:<https://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告 md5sum 的翻译错误
完整文档请见:<https://www.gnu.org/software/coreutils/md5sum>
或者在本地使用:info '(coreutils) md5sum invocation'

使用示例:

128位MD5 - 默认输出

指令: md5sum test1.txt

指令: md5sum -t test1.txt

128位MD5 - 将每个文件当做二进制处理

会比默认输出多一个‘*’

指令: md5sum -b test*

128位MD5 - 从文件中读取MD5值并做检查

-c的作用对象是生成的校验和,不是原始文件本身

指令: md5sum -c test*

由于本地的文件没有md5值所以输出会报错

详情请看下面

使用下面的指令可以生成一个md5校验文件,然后-c选项是对这种文件做校验的

指令:md5sum test1.txt > test1.txt.md5

校验指令:md5sum -c test1.txt.md5

128位MD5 - 创建一个BSD风格的校验和,并做校验

--tag参数为生成一个BSD风格的校验和

指令: md5sum --tag test1.txt > test1.txt.md5

校验指令: md5sum -c test1.txt.md5

128位MD5 - 输出的MD5值不会产生空行,以NULL结尾,方便其他程序处理

指令: md5sum -z test1.txt

128位MD5 - 仅在验证校验和时有用,不报告丢失文件之类的失败

--ignore-missing

在验证一个非常大的文件校验和列表式有用,一般的一个文件没用

我们自己制作一个大的校验文件

文件如下,里面没有lose.txt这个文件,这个文件是我们指令的目标场景构造文件

指令:md5sum -c --ignore-missing test1.txt.md5

128位MD5 - 仅在验证校验和时有用,不为每个成功检查的文件生成`OK`消息

--quiet

指令:md5sum -c --quiet test1.txt.md5

128位MD5 - 仅在验证校验和时有用,成功就成功,不成功就在失败处退出

--status

看下我们构造的错误md5文件列表

指令:md5sum -c --status test1.txt.md5

没有报成功,直接报的失败处

128位MD5 - 验证校验和时,如果有错误,发出警告

-w     看不出区别

指令:md5sum -c -w  test1.txt.md5

128位MD5 - 验证校验和时,如果一个或多个输入行无效,在发出所有警告后退出

--strict   看不出区别

指令:md5sum -c --strict test1.txt.md5

常用组合指令:

NA

指令不常用/组合用法还需继续挖掘:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/6704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

李廉洋:5.5-5.6现货黄金,WTI原油必看分析及策略。

美联储2024年5月议息会议将联邦基金利率的目标区间维持在5.25%-5.5%。本次会议声明发生较大变化&#xff0c;宣布6月开始放缓缩表。鲍威尔讲话总体中性偏鸽&#xff0c;指出美联储的下一步行动不太可能是加息。中信证券认为在美国失业率升至4%以上之前&#xff0c;美联储政策重…

【iOS】KVC

文章目录 前言一、KVC常用方法二、key与keypath区别key用法keypath用法 三、批量存值操作四、字典与模型相互转化五、KVC底层原理KVC设值底层原理KVC取值底层原理 前言 KVC的全称是Key-Value Coding&#xff0c;翻译成中文叫做键值编码 KVC提供了一种间接访问属性方法或成员变…

JavaScript中的DOM和BOM

个人主页&#xff1a;学习前端的小z 个人专栏&#xff1a;JavaScript 精粹 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结&#xff0c;欢迎大家在评论区交流讨论&#xff01; 文章目录 &#x1f4af;Web API&#x1f340;1 API的概念&#x1f340;2 Web API的概念…

【C++ | 关键字】C++ 关键字介绍

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; ⏰发布时间⏰&#xff1a;2024-05-04 0…

手摸手,带你用vue撸后台

前言 说好的教程终于来了&#xff0c;第一篇文章主要来说一说在开始写实际业务代码之前的一些准备工作吧&#xff0c;但这里不会教你 webpack 的基础配置&#xff0c;热更新原理是什么&#xff0c;webpack速度优化等等&#xff0c;有需求的请自行 google&#xff0c;相关文章已…

【C++】详解STL的容器之一:list

目录 简介 初识list 模型 list容器的优缺点 list的迭代器 常用接口介绍 获取迭代器 begin end empty size front back insert push_front pop_front push_back pop_back clear 源代码思路 节点设计 迭代器的设计 list的设计 begin() end() 空构造 ins…

使用360绿色清理工具释放磁盘空间

缘起&#xff1a; 配置差的电脑&#xff0c;在尝试安装360安全卫士时&#xff0c;它变得非常卡顿&#xff0c;无法正常使用。我安装360的初衷其实是想定期清理C盘的空间&#xff0c;以优化电脑的性能。 经过一番探索&#xff0c;发现了一个方法&#xff0c;可以单独提取出360…

Docker镜像的创建和Dockerfile

一. Docker 镜像的创建&#xff1a; 1.基于现有镜像创建: &#xff08;1&#xff09;首先启动一个镜像&#xff0c;在容器里做修改docker run -it --name web3 centos:7 /bin/bash #启动容器​yum install -y epel-release #安装epel源yum install -y nginx #安…

物联网小demo

机智云生成代码 具体参考之前的文章 初始化 ADC用来使用光敏电阻 连续采样开启 采样的周期调高 定时器 定时器1用来实现延时 为了只用温湿度模块DHT11 定时器4用来和51进行交互 实现定时的发送和检测心跳信号 IIC 用来使用oled屏幕 USART 串口1和串口2是机智云自己…

ROS是什么

一、ROS通信机制--松耦合分布式通信 1、核心概念 ①节点&#xff08;node&#xff09;---软件模块 ②节点管理器&#xff08;ROS master&#xff09;---控制中心&#xff0c;提供参数管理 ③话题&#xff08;topic&#xff09;---异步通信机制&#xff0c;传输消息&#xf…

【设计模式】13、template 模板模式

文章目录 十三、template 模板模式13.1 ppl13.1.1 目录层级13.1.2 ppl_test.go13.1.3 ppl.go13.1.4 llm_ppl.go13.1.5 ocr_ppl.go 十三、template 模板模式 https://refactoringguru.cn/design-patterns/template-method 如果是一套标准流程, 但有多种实现, 可以用 template …

Py脚本_文件分类

最近发现通过Edge和chrome或者其他浏览器下载的文件都存放在一个地方就很繁琐&#xff0c;于是翻找以前的脚本来归纳这些文件&#xff0c;虽然有IDM下载独有会自动分类&#xff0c;但是相信很多同学都在一个文件里找文件&#xff0c;这次就写个Py脚本来实现这个功能。 # -*- c…

k8s集群安装

目录 部署步骤概览 1、基础环境部署 2、docker环境部署 3、配置k8s集群 4、集群初始化 5、安装dashboard软件 写在前面&#xff1a;本文安装单点master多node的k8s集群&#xff0c;主要用于k8s学习或k8s环境测试&#xff1b;部署的是1.23版本&#xff0c;在1.24版本起&am…

stm32单片机开发四、USART“串口通信“

串口的空闲状态时高电平&#xff0c;起始位是低电平&#xff0c;来打破空闲状态的高电平 必须要有停止位&#xff0c;停止位一般为一位高电平 串口常说的数据为8N1&#xff0c;其实就是8个数据位&#xff08;固定的&#xff09;&#xff0c;N就是none&#xff0c;也就是0个校验…

【Linux 网络】网络基础(一)(局域网、广域网、网络协议、TCP/IP结构模型、网络传输、封装和分用)-- 详解

一、计算机网络的发展背景 1、网络的定义 网络是指将多个计算机或设备通过通信线路、传输协议和网络设备连接起来&#xff0c;形成一个相互通信和共享资源的系统。 &#xff08;1&#xff09; 独立模式 独立模式 &#xff1a; 计算机之间相互独立。 &#xff08;2&#xff09;…

数据结构——二叉树链式结构的实现(下)

二叉树找值找为x的结点 找值不简单吗&#xff1f;轻轻松松拿捏&#xff0c;大部分同学都会写出这样的代码 但这种代码有问题&#xff0c;因为没有把查找结果返回给上一层&#xff0c;没有用返回值接收。 当找到3时返回给了上一层&#xff0c;但并没有用返回值接收&#xff0c;…

Rust 生命周期浅谈

1. 简述 Rust 中的每一个引用都有其 生命周期&#xff08;lifetime&#xff09;&#xff0c;也就是引用保持有效的作用域。大部分时候生命周期是隐含并可以推断的&#xff0c;正如大部分时候类型也是可以推断的一样。类似于当因为有多种可能类型的时候必须注明类型&#xff0c;…

大数据面试题(九):Hive的高频面试考点(值得收藏)

文章目录 Hive的高频面试考点 一、Hive中两个大表实现join的操作,简单描述一下

书接上文,助力智能化诊断高质提效,基于轻量级CNN模型MobileNet开发构建人体手骨X光骨骼骨龄分析识别系统

骨龄是骨骼年龄的简称&#xff0c;需要借助于骨骼在X光摄像中的特定图像来确定。通常要拍摄左手手腕部位的X光片&#xff0c;医生通过X光片观察来确定骨龄。这在临床上是一件非常消耗精力和时间的一项放射临床工作。写一个骨龄可能要10多分钟去完成。如果一天要写几十个骨龄&am…

【汇编语言】中断及外部设备操作

【汇编语言】中断及外部设备操作 文章目录 【汇编语言】中断及外部设备操作前言一、中断及其处理中断的概念8086内中断中断处理程序案例&#xff1a;系统中的0号中断中断过程 二、编制中断处理程序中断处理程序及其结构编制中断处理程序——以除法错误中断为例do0子程序应该放在…