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

相关文章

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

Python如何计算两个不同类型列表的相似度

《Python如何计算两个不同类型列表的相似度》在编程中,经常需要比较两个列表的相似度,尤其是当这两个列表包含不同类型的元素时,下面小编就来讲讲如何使用Python计算两个不同类型列表的相似度吧... 目录摘要引言数字类型相似度欧几里得距离曼哈顿距离字符串类型相似度Levenshtein距离Jaccard相

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

java中不同版本JSONObject区别小结

《java中不同版本JSONObject区别小结》本文主要介绍了java中不同版本JSONObject区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录1. FastjsON2. Jackson3. Gson4. org.json6. 总结在Jav

Python中连接不同数据库的方法总结

《Python中连接不同数据库的方法总结》在数据驱动的现代应用开发中,Python凭借其丰富的库和强大的生态系统,成为连接各种数据库的理想编程语言,下面我们就来看看如何使用Python实现连接常用的几... 目录一、连接mysql数据库二、连接PostgreSQL数据库三、连接SQLite数据库四、连接Mo

MySql9.1.0安装详细教程(最新推荐)

《MySql9.1.0安装详细教程(最新推荐)》MySQL是一个流行的关系型数据库管理系统,支持多线程和多种数据库连接途径,能够处理上千万条记录的大型数据库,本文介绍MySql9.1.0安装详细教程,... 目录mysql介绍:一、下载 Mysql 安装文件二、Mysql 安装教程三、环境配置1.右击此电脑