当前位置: 首页 > news >正文

『Linux学习笔记』linux系统有哪些方法计算文件的md5!

linux系统有哪些方法计算文件的md5!

文章目录

  • 一. linux系统有哪些方法计算文件的md5!
      • 1. 使用 `md5sum` 命令(推荐)
        • 示例:
        • 输出:
        • 使用方法:
      • 2. 使用 `openssl` 命令
        • 计算MD5值:
        • 输出:
        • 使用方法:
      • 3. 使用 `shasum` 命令
        • 计算MD5值:
        • 输出:
        • 使用方法:
      • 4. 使用 `file` 命令配合 `md5sum`
      • 总结:
  • 二. 上面哪种方法速度最快
      • 1. **`md5sum`**
        • 速度特点:
      • 2. **`openssl`**
        • 速度特点:
      • 3. **`shasum`**
        • 速度特点:
      • 4. **`file` 配合 `md5sum`**
      • 综合对比(看这里):
      • 结论:
  • 三. 使用md5sum计算一个目录以及子目录下所有文件的md5值,输出结果保存到一个文件中。
      • 1. 具体步骤:
      • 2. 命令示例:
      • 3. 说明:
      • 4. 示例输出:
      • 5. 如果需要包含目录本身的MD5值:
  • 四. 每次执行的时候只需要`输入文件夹`以及`输出文件`
      • 修改后的脚本:
      • 脚本说明:
      • 使用步骤:
      • 示例:
        • 示例 1:指定输出文件名
        • 示例 2:使用默认输出文件名
      • 输出示例:

一. linux系统有哪些方法计算文件的md5!

在Linux系统中,计算文件的MD5值通常使用一些命令行工具。最常见的工具有 md5sumopensslshasum。以下是详细的介绍和示例:

1. 使用 md5sum 命令(推荐)

md5sum 是Linux中最常用的计算文件MD5值的命令。它会读取文件的内容,并计算出MD5哈希值。这个命令适用于计算大多数文件类型的MD5值。

示例:
md5sum filename
输出:
d41d8cd98f00b204e9800998ecf8427e  filename
  • d41d8cd98f00b204e9800998ecf8427e 是该文件的MD5哈希值。
  • filename 是文件的名称。
使用方法:
  • md5sum 支持管道输入,可以通过管道计算内容的MD5,例如:
    echo "hello world" | md5sum
    
    输出:
    b94d27b9934d3e08a52e52d7da7dabfa  -
    

2. 使用 openssl 命令

openssl 是一个功能强大的工具,除了可以用于SSL/TLS通信,还可以用于计算文件的MD5、SHA-1、SHA-256等哈希值。

计算MD5值:
openssl dgst -md5 filename
输出:
MD5(filename)= d41d8cd98f00b204e9800998ecf8427e
使用方法:
  • 如果你需要计算某个文件的MD5,可以使用上面的命令。
  • 你也可以计算其他哈希算法的值,例如SHA-256:
    openssl dgst -sha256 filename
    

3. 使用 shasum 命令

shasum 是一个常见的命令行工具,用于计算文件的SHA-1、SHA-256等哈希值。它也可以用来计算MD5哈希值,虽然它主要是针对SHA系列的。

计算MD5值:
shasum -a 1 filename
输出:
d41d8cd98f00b204e9800998ecf8427e  filename
使用方法:
  • shasum 支持指定哈希算法的参数,例如-a 256 用于计算SHA-256:
    shasum -a 256 filename
    

4. 使用 file 命令配合 md5sum

file 命令可以用于识别文件类型,但它本身并不计算MD5值。然而,你可以结合 filemd5sum 来先检查文件类型,然后计算MD5值。

file filename
md5sum filename

总结:

  • md5sum 是最常见的计算MD5值的命令,适用于大多数Linux系统。
  • openssl 是功能全面的工具,支持更多的哈希算法,并且可以用于SSL/TLS加密等任务。
  • shasum 主要用于SHA系列算法,但也支持计算MD5。

根据实际需求,可以选择适合的工具来计算文件的MD5值。

二. 上面哪种方法速度最快

在Linux中计算文件的MD5值时,速度的差异主要取决于工具本身的实现以及文件的大小。一般来说,常见的计算MD5值的工具如 md5sumopensslshasum 的速度差异并不是非常大,因为它们都采用类似的底层实现,但根据工具的实现细节和文件的处理方式,仍然会有一些区别。

1. md5sum

md5sum 是专门用于计算MD5哈希值的工具,它的速度通常是最快的,特别是当计算大文件时。因为它专门为计算MD5哈希设计,内部优化较好。

速度特点:
  • 专为MD5设计,因此计算过程简单高效。
  • 速度通常较快,尤其是在大文件计算时。
  • 适合批量计算和大文件的MD5值。

2. openssl

openssl 是一个功能非常强大的工具,虽然它支持多种哈希算法(包括MD5),但它的计算速度通常比 md5sum 稍慢。原因是 openssl 除了计算哈希之外,还包含了许多其他的加密功能,因此它的实现可能稍微复杂一些。

速度特点:
  • 虽然支持MD5,但它的计算速度通常不如 md5sum
  • 如果计算的是MD5,性能差距不大,但对于其他更复杂的加密算法(如SHA-256等),openssl 可能比专门的工具稍慢。

3. shasum

shasum 主要用于计算SHA系列的哈希值,但它也支持计算MD5。由于它的实现不是专门针对MD5,因此它的速度通常比 md5sum 稍慢。

速度特点:
  • 主要用于SHA系列哈希的计算,所以其处理MD5的效率较低。
  • 相对较慢,特别是在计算大文件时。

4. file 配合 md5sum

file 命令本身不会计算MD5哈希值,它用于识别文件类型,因此它并不直接影响MD5计算速度。如果你仅关注计算MD5,file 并不是一个必要步骤。

综合对比(看这里):

  • 最快md5sum —— 这是计算MD5值的最优化工具,速度通常最快,尤其是在文件较大时。
  • 次之openssl —— 计算MD5时稍慢于 md5sum,但差距通常不大,适合同时进行其他加密操作。
  • 最慢shasum —— 由于它更多用于计算SHA系列哈希值,计算MD5时稍微慢一些。

结论:

如果你的目标是单纯地计算MD5值并且追求速度,md5sum 是最快且最高效的工具。对于更复杂的加密需求或需要其他哈希算法时,openssl 也很有用,但它的MD5计算速度相对较慢。

三. 使用md5sum计算一个目录以及子目录下所有文件的md5值,输出结果保存到一个文件中。

要使用 md5sum 计算一个目录及其所有子目录下所有文件的 MD5 值,并将输出结果保存到一个文件中,可以使用 find 命令结合 md5sum 来实现。find 用于递归查找目录中的所有文件,md5sum 用于计算每个文件的 MD5 值。

1. 具体步骤:

  1. 使用 find 命令查找目录及子目录中的所有文件。
  2. 使用 md5sum 计算每个文件的 MD5 值。
  3. 将计算结果输出并保存到指定的文件中。

2. 命令示例:

假设你想计算 /path/to/directory 目录及其子目录下所有文件的 MD5 值,并将结果保存到 md5sums.txt 文件中,命令如下:

find /path/to/directory -type f -exec md5sum {} \; > md5sums.txt

3. 说明:

  • find /path/to/directory:指定要查找的目录路径。
  • -type f:仅查找文件(不包括目录)。
  • -exec md5sum {} \;:对每个文件执行 md5sum 命令,{}find 命令查找到的每个文件的占位符。
  • > md5sums.txt:将所有输出结果重定向到 md5sums.txt 文件中。

4. 示例输出:

输出的 md5sums.txt 文件将包含每个文件的 MD5 值和文件路径,例如:

d41d8cd98f00b204e9800998ecf8427e  /path/to/directory/file1.txt
9a0364b9e99bb480dd25e1f0284c8555  /path/to/directory/subdir/file2.txt
f8e5f90f64e1cf87f9030b4301d74e4c  /path/to/directory/subdir/file3.txt

5. 如果需要包含目录本身的MD5值:

如果你希望也计算目录本身的MD5(即将每个目录视为一个“文件”),可以通过给 find 添加一些选项来处理目录。

不过通常,目录的 MD5 值没有实际意义,因为它只是文件名和结构的集合。如果要计算目录内容的 MD5,依然可以通过对目录下所有文件的 MD5 值进行哈希计算来实现。

四. 每次执行的时候只需要输入文件夹以及输出文件

好的,我会根据你的要求修改脚本,使得用户可以选择输入输出文件名。如果用户没有提供输出文件名,则默认使用 md5sums.txt 作为输出文件名。

修改后的脚本:

#!/bin/bash# 检查是否输入了目录名
if [ -z "$1" ]; thenecho "请提供目录路径"exit 1
fi# 获取输入的目录路径
DIR="$1"# 检查目录是否存在
if [ ! -d "$DIR" ]; thenecho "目录 '$DIR' 不存在,请检查路径"exit 1
fi# 获取输出文件名,如果未提供则默认使用 md5sums.txt
OUTPUT_FILE="${2:-md5sums.txt}"# 计算目录下所有文件的 MD5 值并保存到输出文件
find "$DIR" -type f -exec md5sum {} \; > "$OUTPUT_FILE"# 提示用户操作完成
echo "MD5 值计算完成,结果已保存到 '$OUTPUT_FILE'"

脚本说明:

  • if [ -z "$1" ]; then:检查是否提供了目录路径。如果没有提供,脚本会提示并退出。
  • DIR="$1":将第一个参数(目录路径)赋值给 DIR 变量。
  • if [ ! -d "$DIR" ]; then:检查目录是否存在,如果目录不存在,提示错误并退出。
  • OUTPUT_FILE="${2:-md5sums.txt}":如果用户提供了第二个参数(输出文件名),则使用该文件名,否则使用默认值 md5sums.txt
  • find "$DIR" -type f -exec md5sum {} \; > "$OUTPUT_FILE":计算目录下所有文件的 MD5 值,并将结果保存到指定的输出文件中。

使用步骤:

  1. 创建脚本文件:

    将上述内容保存为 calculate_md5.sh 文件。

  2. 使脚本可执行:

    在终端中输入以下命令使脚本可执行:

    chmod +x calculate_md5.sh
    
  3. 运行脚本:

    • 如果需要指定输出文件名,运行:

      ./calculate_md5.sh /path/to/directory outputfile.txt
      

      这会将 MD5 值保存到 outputfile.txt 文件中。

    • 如果不指定输出文件名,脚本会默认使用 md5sums.txt 作为输出文件名:

      ./calculate_md5.sh /path/to/directory
      

示例:

示例 1:指定输出文件名

假设你运行以下命令:

./calculate_md5.sh /home/user/myfolder my_md5_results.txt

结果会保存在 my_md5_results.txt 文件中。

示例 2:使用默认输出文件名

假设你运行以下命令:

./calculate_md5.sh /home/user/myfolder

结果会保存在默认的 md5sums.txt 文件中。

输出示例:

无论你是否指定输出文件名,输出文件会包含每个文件的 MD5 值和路径,例如:

d41d8cd98f00b204e9800998ecf8427e  /home/user/myfolder/file1.txt
9a0364b9e99bb480dd25e1f0284c8555  /home/user/myfolder/subdir/file2.txt
f8e5f90f64e1cf87f9030b4301d74e4c  /home/user/myfolder/subdir/file3.txt

这样,用户每次执行脚本时只需输入目录路径,且可以选择是否指定输出文件名,提供了更大的灵活性。

相关文章:

『Linux学习笔记』linux系统有哪些方法计算文件的md5!

linux系统有哪些方法计算文件的md5! 文章目录 一. linux系统有哪些方法计算文件的md5!1. 使用 md5sum 命令(推荐)示例:输出:使用方法: 2. 使用 openssl 命令计算MD5值:输出:使用方法&#xff1…...

css vue vxe-text-ellipsis table 实现多行文本超出隐藏省略

分享 vxe-text-ellipsis table grid 多行文本溢出省略的用法 正常情况下如果需要使用文本超出隐藏,通过 css 就可以完成 overflow: hidden; text-overflow: ellipsis; white-space: nowrap;但是如果需要实现多行文本溢出,就很难实现里,谷歌…...

构建现代Web应用:FastAPI、SQLModel、Vue 3与Axios的结合使用

FastAPI介绍 FastAPI是一个用于构建API的现代、快速(高性能)的Web框架,使用Python并基于标准的Python类型提示。它的关键特性包括快速性能、高效编码、减少bug、智能编辑器支持、简单易学、简短代码、健壮性以及标准化。FastAPI自动提供了交互…...

图像边界填充算法详解与Python实现

目录 图像边界填充算法详解与实现1. 基础概念1.1 边界填充的意义与应用场景1.2 常见填充策略概览2. 零填充算法(Zero Padding)2.1 理论介绍2.2 Python实现及代码详解2.3 案例分析3. 镜像填充算法(Mirror Padding)3.1 理论介绍3.2 Python实现及代码详解3.3 案例分析4. 重复填…...

中兴机顶盒B860AV1.1刷机固件升级和教程「适用4/8G版」

准备工作: TTL 线(CH340G 按系统版本找到要对应驱动)下载 putty 软件拆开电视盒接好 TTL 线(2、5、6 针脚对应GND、RX、TX)在资源管理器的端口选项下找到 CH340G,记住端口号(如 COM4&#xff0…...

JVM 性能调优 -- CMS 垃圾回收器 GC 日志分析【Full GC】

前言: 上一篇我们分析了 Minor GC 的发生过程,因为 GC 日志没有按我们预估的思路进行打印,其中打印了 CMS 垃圾回收器的部分日志,本篇我们就来分析一下 CMS 垃圾收集日志。 JVM 系列文章传送门 初识 JVM(Java 虚拟机…...

重塑视频新语言,让每一帧都焕发新生——Video-Retalking,开启数字人沉浸式交流新纪元!

模型简介 Video-Retalking 模型是一种基于深度学习的视频再谈话技术,它通过分析视频中的音频和图像信息,实现视频角色口型、表情乃至肢体动作的精准控制与合成。这一技术的实现依赖于强大的技术架构和核心算法,特别是生成对抗网络&#xff0…...

C#中面试的常见问题001

1、c#访问修饰符有哪些 public:公共访问级别,成员可以被任何其他代码访问。private:私有访问级别,成员只能在定义它的类内部访问。protected:受保护的访问级别,成员可以被定义它的类及其子类访问。interna…...

webGis 气象站点数据解析渲染

1.站点数据说明 1.1 数据来源 站点数据来源多样。 1.2数据传输 实现前端的展示,数据传输的方式有: json等等 1.2数据格式 let arr [{ lat:1,//经纬度 lng:1, value:2//值 },{},...] 1.3站点数据转格点数据 turf.interpolate克里金插值qgis等ID…...

Vue3+Typescript+Axios+.NetCore实现导出Excel文件功能

前端代码 //导出Excel const exportMaintenanceOrderSettlementItemExcelClick async () > {let url ${VITE_APP_API_URL}/api/app/maintenance/settlement-service-item/${currentMaintenanceOrderId.value}/${currentMaintenanceOrderSettlementRow.value.id};let file…...

专属主机服务器和ECS服务器有什么区别?

‌专属主机服务器和ECS服务器的主要区别在于资源隔离、计费方式、管理权限等方面。‌ 资源隔离 ‌专属主机服务器‌:用户可以独享整台物理服务器资源,与其他租户的服务器物理隔离。这意味着用户不需要与其他租户共享物理资源,可以获取服务器…...

MySQL索引与分区:性能优化的关键

在开发过程中,随着数据量的不断增长,MySQL 查询的性能问题会逐渐显现。特别是在大数据量下,查询变得越来越慢,甚至可能导致系统崩溃。为了优化查询,MySQL 提供了 分区(Partitioning) 和 索引&am…...

VUE项目部署服务器之后刷新页面异常

情况: vue项目在本地完美运行,经过npm run build之后把dist目录上传到服务后。只有访问文件跟目录可以运行,但刷新之后会找不到相应的页面。 网上都说是hository路由的问题导致,需要修改成hash模式。如果不想修改为hash模式&…...

【实验13】使用预训练ResNet18进行CIFAR10分类

目录 1 数据处理 1.1 数据集介绍 1.2数据处理与划分 2 模型构建- Pytorch高层API中的Resnet18 3 模型训练 4 模型评价 5 比较“使用预训练模型”和“不使用预训练模型”的效果: 6 模型预测 7 完整代码 8 参考链接 1 数据处理 1.1 数据集介绍 数据规模&…...

如何将 GitHub 私有仓库(private)转换为公共仓库(public)

文章目录 如何将 GitHub 私有仓库转换为公共仓库步骤 1: 登录 GitHub步骤 2: 导航到目标仓库步骤 3: 访问仓库设置步骤 4: 更改仓库可见性步骤 5: 确认更改步骤 6: 验证更改注意事项 如何将 GitHub 私有仓库转换为公共仓库 在软件开发领域,GitHub 是一个广受欢迎的…...

进制的问题

蓝桥2015某题 计算数字x在进制p 下的各位数字之和 ​ int calc(int x,int p) {int res0;while(x){resx%p;//取当前位累加x/p;//去掉最低位}return res; }​...

【配置】如何下载和配置Android studio?

下载Android Studio 1、下载链接 https://developer.android.google.cn/studio?hlzh-cn​​​​​​​​​​​​​​​​​​​​ 注意:下载的时候要关闭代理服务器 2、安装软件 根据提示进行安装 3、配置proxy 这里建议配置代理而不是配置国内镜像源 所以…...

CA系统(file.h---申请认证的处理)

#pragma once #ifndef FILEMANAGER_H #define FILEMANAGER_H #include <string> namespace F_ile {// 读取文件&#xff0c;返回文件内容bool readFilename(const std::string& filePath);bool readFilePubilcpath(const std::string& filePath);bool getNameFro…...

Redis开发04:Redis的INFO信息解析

命令解释redis_versionRedis 的版本号&#xff0c;这里是 3.2.100。redis_git_sha1Redis 使用的 Git SHA1 校验值&#xff0c;表示当前代码的版本。redis_git_dirty如果 Redis 当前运行的代码是脏版本&#xff08;未提交的修改&#xff09;&#xff0c;该值为 1&#xff0c;否则…...

《Learn Three.js》学习(2)构建Three.js基本组件

前言&#xff1a; 本章将了解内容包括Three中的主要组件&#xff1b;THERE.SCENE对象的作用&#xff1b;几何图形和格网如何关联&#xff1b;区别正射/透视投影摄像机 基础理论知识&#xff1a; Three.scene&#xff08;场景图&#xff09;保存所有对象、光源和渲染所需的其他…...

VLLM 格式化LLM输出

文章目录 前言guided_jsonguided_choiceguided_regexguided_grammar总结 前言 vllm OpenAI Compatible Server 提供了格式化LLM输出的能力&#xff0c;默认的格式化解码后端应该是outlines 目前提供了四个参数来控制格式化输出&#xff0c;分别是&#xff1a; guided_json: …...

Java篇——Java通过JNA调用c++库时传参含有结构体时数据错乱的解决办法

Java通过JNA调用c库时传参含有结构体时&#xff0c;只继承Structure是不够的&#xff0c;还需要实现Structure.ByValue&#xff0c;或者强制指定结构体字节对齐。示例如下&#xff1a; 1、c库中的结构体定义&#xff1a; 2、java中结构体定义&#xff1a; 3、java中调用 如果没…...

sql分类

SQL&#xff08;Structured Query Language&#xff09;是一种用于管理和操作关系数据库管理系统&#xff08;RDBMS&#xff09;的编程语言。SQL 可以分为几个主要类别&#xff0c;每个类别都有其特定的用途和功能。以下是 SQL 的主要分类&#xff1a; 1. 数据定义语言&#x…...

LayaBox1.8.4实现战争迷雾效果

实现思路&#xff1a; 和Unity实现思路一样&#xff0c;可看我写的下面的一篇文章 战争迷雾FogOfWar---Unity中实现-CSDN博客 根据碰撞点可以计算出需要透明的位置&#xff0c;怎样计算如下&#xff1a; 根据迷雾mesh的长宽和纵向横向的的像素数可以得出&#xff0c;每个小方…...

Python打包元数据困境:约束的重要性

在Python社区中&#xff0c;一项旨在建立新的通用锁文件标准的努力正在展开&#xff0c;这一努力主要在Python讨论论坛上进行。此倡议凸显了创建一个让所有人都满意的标准化方案的难度。不同Python打包工具对锁文件应有的形态和用途有着略微不同的理解。然而&#xff0c;在这些…...

第29天 MCU入门

目录 MCU介绍 MCU的组成与作用 电子产品项目开发流程 硬件开发流程 常用元器件初步了解 硬件原理图与PCB板 常见电源符号和名称 电阻 电阻的分类 贴片电阻的封装说明&#xff1a; 色环电阻的计算 贴片电阻阻值计算 上拉电阻与下拉电阻 电容 电容的读数 二极管 LED 灯电路 钳位作…...

三分钟快速掌握——Linux【vim】的使用及操作方法

一、vim的使用 vim是一个文本编辑器 非常小巧轻便 1.1如何进入vim编辑器 方法一&#xff1a; 首先使用touch 1.c 创建一个源文件 然后使用vim 1.c进入 方法二&#xff1a; 直接使用指令 vim 2.c 会直接创建一个2.c的源文件 退出时记得保存&#xff08;使用wq或者x&am…...

安达发|制造业APS智能优化排产软件的四类制造模型解决方案

在制造业中&#xff0c;APS&#xff08;高级计划和排程系统&#xff09;智能优化排产软件的应用越来越广泛。它通过集成先进的算法和模型&#xff0c;帮助企业提高生产效率、降低成本并提升客户满意度。针对不同类型的生产需求&#xff0c;APS软件提供了四类制造模型解决方案&a…...

屏幕分辨率|尺寸|颜色深度指纹修改

一、前端通过window.screen接口获取屏幕分辨率 尺寸 颜色深度&#xff0c;横屏竖屏信息。 二、window.screen c接口实现&#xff1a; 1、third_party\blink\renderer\core\frame\screen.idl // https://drafts.csswg.org/cssom-view/#the-screen-interface[ExposedWindow ] …...

Mac安装及合规无限使用Beyond Compare

文章目录 Beyond CompareBeyond Compare简介Beyond Compare安装Beyond Compare到期后继续免费使用 Beyond Compare Beyond Compare简介 Beyond Compare 是一款由 Scooter Software 开发的文件和文件夹比较工具。它主要用于对比两个文件或文件夹之间的差异&#xff0c;并支持文…...

记录一次 k8s 节点内存不足的排查过程

背景&#xff1a;前端服务一直报404&#xff0c;查看k8s日志&#xff0c;没发现报错&#xff0c;但是发现pods多次重启。 排查过程&#xff1a; 查看pods日志&#xff0c;发现日志进不去。 kubectrl logs -f -n weave pod-name --tail 100查看pod describe kubectl describ…...

方差分析、相关分析、回归分析

第一章&#xff1a;方差分析 1.1 方差分析概述 作用: 找出关键影响因素&#xff0c;并进行对比分析&#xff0c;选择最佳组合方案。影响因素: 控制因素&#xff08;人为可控&#xff09;和随机因素&#xff08;人为难控&#xff09;。控制变量的不同水平: 控制变量的不同取值…...

【JavaEE初阶 — 网络原理】初识网络原理

目录 1. 网络发展史 1.1 独立模式 1.2 网络互连 1.2.1 网络互联的背景 1.2.2 网络互联的定义 1.3 局域网LAN 1.4 广域网WAN 2. 网络通信基础 2.1 IP地址 2.2 端口号 2.3 认识协议 2.4 五元组 2.5 协议分层 2.5.1 分…...

算法的NPU终端移植:深入探讨与实践指南

目录 ​编辑 引言 算法选择 模型压缩 权重剪枝 量化 知识蒸馏 硬件适配 指令集适配 内存管理 并行计算 性能测试 速度测试 精度测试 功耗测试 案例分析 图像识别算法的NPU移植案例 结论 引言 在人工智能技术的浪潮中&#xff0c;神经网络处理器&#xff08;…...

Lombok :简化 Java 编程的得力工具

在 Java 开发过程中&#xff0c;常常需要编写大量的样板代码&#xff0c;例如构造函数、Getter 和 Setter 方法、equals 和 hashCode 方法等。这些代码虽然逻辑相对固定&#xff0c;但编写起来却较为繁琐且容易出错&#xff0c;并且会使代码显得冗长。Lombok 应运而生&#xff…...

C语言实例_14之求俩数的最大公约数和最小公倍数

1.最大公约数和最小公倍数概述 最大公约数&#xff08;Greatest Common Divisor&#xff0c;简称GCD&#xff09;&#xff1a; 也称为最大公因数&#xff0c;是指两个或多个整数共有约数中最大的一个。例如&#xff0c;对于整数12和18&#xff0c;它们的约数分别为&#xff1…...

wxWidgets-ImageView

wxWidgets实现图片浏览、放大缩小、另存为新的图片格式等 #include "wx/wxprec.h"#ifndef WX_PRECOMP#include "wx/wx.h" #endif#include "wx/filename.h" #include "wx/zstream.h"#include "imageviewctrl.h"class MyFrame…...

什么是Axios,有什么特点

什么是 Axios&#xff1f; Axios 是一个基于 Promise 的 HTTP 客户端&#xff0c;可以用于浏览器和 Node.js 环境。它由 Matt Zabriskie 创建&#xff0c;旨在提供一个简单、灵活且功能强大的 HTTP 请求库。Axios 支持所有现代浏览器和 Node.js&#xff0c;可以用于发送 GET、…...

springboot331“有光”摄影分享网站系统pf(论文+源码)_kaic

毕 业 设 计&#xff08;论 文&#xff09; “有光”摄影分享网站设计与实现 摘 要 自互联网的发展至今&#xff0c;其基础理论与技术都已完善&#xff0c;并积极参与了整个社会各个领域。它容许信息根据媒体传播&#xff0c;并和信息可视化工具一起为大家提供优质的服务。对于…...

3D姿势和跟踪的人体行为识别

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年11月28日21点20分 神秘男子影, 秘而不宣藏。 泣意深不见, 男子自持重, 子夜独自沉。 论文链接 点击开启你的论文编程之旅…...

手机设置了卡2上网,卡1禁止上网,但是卡1还是会偷偷跑流量,这是什么情况???

双卡双待手机&#xff0c;卡2设置为默认上网卡&#xff0c;卡1却会偷偷跑流量&#xff0c;这就很迷。 双卡双待手机&#xff0c;不管是哪个牌子&#xff08;网上有小米&#xff0c;华为&#xff0c;vivo出现这种情况&#xff0c;我的是华为mate20&#xff09;&#xff0c;都存在…...

基于单片机的温度控制系统设计

摘 要 当今社会不断发展&#xff0c;工业以及生活领域对温度控制系统的要求日益增加。以往的设计系统已经不能满足如今的社会需求&#xff0c;因此设计更加符合要求的温度控制系统是大势所趋。采用单片机进行温度控制系统的设计可以使温度的调节更简单、灵活&#xff0c;节约操…...

pjfun.top相册中上传图片获取github apiToken

1、登录github [登录](https://github.com/login) 没有账号就注册2、 点击头像&#xff0c;进入设置settings 3、进入Developer settings 4、点击Fine-grained tokens 再点击 Generate new token 5、填写相关基础信息 Token name&#xff08;随意起名&#xff09; Expiratio…...

S4 UPA of AA :新资产会计概览

通用并行会计&#xff08;Universal Parallel Accounting&#xff09;可以支持每个独立的分类账与其他模块集成&#xff0c;UPA主要是为了支持平行评估、多货币类型、财务合并、多准则财务报告的复杂业务需求 在ML层面UPA允许根据不同的分类账规则对物料进行评估&#xff0c;并…...

单片机学习笔记 11. 外部中断

更多单片机学习笔记&#xff1a;单片机学习笔记 1. 点亮一个LED灯单片机学习笔记 2. LED灯闪烁单片机学习笔记 3. LED灯流水灯单片机学习笔记 4. 蜂鸣器滴~滴~滴~单片机学习笔记 5. 数码管静态显示单片机学习笔记 6. 数码管动态显示单片机学习笔记 7. 独立键盘单片机学习笔记 8…...

C++中智能指针的使用及其原理 -- RAII,内存泄漏,shared_ptr,unique_ptr,weak_ptr

目录 1.智能指针的使用场景分析 2.RAII和智能指针的设计思路 3.C标准库智能指针的使用 4.智能指针的原理以及模拟实现 5.shared_ptr循环引用问题和weak_ptr 5.1shared_ptr循环引用问题 5.2weak_ptr的原理和部分接口 5.3weak_ptr的简单模拟实现 6. shared_ptr的线程安…...

DICOM医学影像应用篇——伪彩色映射 在DICOM医学影像中的应用详解

目录 引言 伪彩色映射的概念 基本原理 查找表&#xff08;Look-Up Table, LUT&#xff09; 步骤 示例映射方案 实现伪彩色映射的C代码 代码详解 伪彩色处理效果展示 总结 扩展知识 LUT 的基本概念 LUT 在伪彩色映射中的应用 示例 引言 在医学影像处理中&#xff0c…...

注意http-proxy-middleware要解决跨域问题,想修改origin请求头不要设置changeOrigin=true

在使用http-proxy-middleware的时候&#xff0c;有一个配置是“changeOrigin”&#xff0c;通过名字来看这个字段是用来控制是否修改origin的&#xff0c;但是实际使用下来&#xff0c;你会发现&#xff0c;当设置为true的时候&#xff0c;header中的origin的值并不会修改&…...

SpringBoot宠物领养平台:设计与实现

摘 要 如今社会上各行各业&#xff0c;都在用属于自己专用的软件来进行工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。互联网的发展&#xff0c;离不开一些新的技术&#xff0c;而新技术的产生往往是为了解决现有问题而产生的。针对于宠物领养…...

qt 的udp发送和接收

udp要在.pro中加入 QT network udp接收 //QUdpSocket *udp1; udp1 new QUdpSocket(this); udp1->bind(2024,QUdpSocket::ShareAddress); connect(udp1,SIGNAL(readyRead()),this,SLOT(ReadyOut())); void MainWindow::ReadyOut() { while(udp1->hasPend…...