Mac安装upx及不同os计算md5值

2024-01-09 06:12
文章标签 安装 计算 mac 不同 os md5 upx

本文主要是介绍Mac安装upx及不同os计算md5值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Mac安装upx

最近需要将exe文件打包到pod内部,为了减少包占用磁盘空间,需要借用upx对windows exe文件进行压缩。

1 概念:压缩工具

UPX 全称是 “Ultimate Packer for eXecutables”,是一个免费、开源、编写、可扩展、高性能的可执行程序打包程序。换句话说一个可执行文件的压缩工具。

  • UPX 可以压缩各种类型的可执行文件
  • 压缩后的文件可以直接由操作系统执行
  • 压缩过程不会修改源文件,也就意味着解压后直接可以得到原始文件
  • 不会产生额外的动态库调用

对于一些不法分子来说,也会通过upx对病毒和木马进行加壳以躲避病毒的查杀。

2 安装upx

网址:https://macappstore.org/upx/

因为我使用的是mac系统,所以首先想到通过brew install来进行安装。但发现过程中会报各种各样的问题。于是参考官网教程一步一步走,最后安装成功。

  1. 在终端复制如下命令
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  1. 输入配置到.zprofile配置文件
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
  1. 重新执行brew install upx,即可安装成功

在这里插入图片描述

3 使用

upx压缩命令很简单upx + 可执行文件名

upx aa.exe

拓展:

计算文件md5值

在文件传输过程中如果出现文件损坏或者打不开,第一时间应该计算文件md5值,查看是否在传输过程中有丢失

①linux:md5sum

md5sum + 文件名

在这里插入图片描述

②mac:md5

md5 + 文件名

在这里插入图片描述

③windows:Get-FileHash -Algorithm MD5

打开powershell(shift+鼠标右键)
Get-FileHash -Algorithm MD5 + 文件名

在这里插入图片描述

检查图片是否损坏

今天客户反馈说JPG图片无法在浏览器中打开,于是首先想到图片是否损坏。

检测图片是否损坏主要是看文件头是否正确,文件内容是否正确。我这里以检测JPG的文件头为例:

  • 分别读取JPG文件的头、尾字节。
  • JPG图片格式:FFD8 和FFD9

在这里插入图片描述

如果是mac可以直接通过安装工具检测:

# 安装图片检测工具
brew install imagemagick
# 检测图片是否损坏
magick identify -verbose example.jpg

如果图片未损坏则会出现下面结果:
在这里插入图片描述

这篇关于Mac安装upx及不同os计算md5值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/586155

相关文章

JDK8(Java Development kit)的安装与配置全过程

《JDK8(JavaDevelopmentkit)的安装与配置全过程》文章简要介绍了Java的核心特点(如跨平台、JVM机制)及JDK/JRE的区别,重点讲解了如何通过配置环境变量(PATH和JA... 目录Java特点JDKJREJDK的下载,安装配置环境变量总结Java特点说起 Java,大家肯定都

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

Python文本相似度计算的方法大全

《Python文本相似度计算的方法大全》文本相似度是指两个文本在内容、结构或语义上的相近程度,通常用0到1之间的数值表示,0表示完全不同,1表示完全相同,本文将深入解析多种文本相似度计算方法,帮助您选... 目录前言什么是文本相似度?1. Levenshtein 距离(编辑距离)核心公式实现示例2. Jac

Python Flask实现定时任务的不同方法详解

《PythonFlask实现定时任务的不同方法详解》在Flask中实现定时任务,最常用的方法是使用APScheduler库,本文将提供一个完整的解决方案,有需要的小伙伴可以跟随小编一起学习一下... 目录完js整实现方案代码解释1. 依赖安装2. 核心组件3. 任务类型4. 任务管理5. 持久化存储生产环境

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更