说到压缩,大家可能首先想到的是WinRAR和WinZIP之类的压缩软件,但是肯定都没听说过UPX。如果你是一个对程序占用空间斤斤计较的人,那么UPX压缩可以很好的解决你的一些问题,当然,首先我需要先给一些不懂UPX是什么的同学补补课。
UPX是什么?
可以理解成压缩软件,不过他只对可执行文件进行压缩(如EXE文件),当然也有人把他叫壳,即为软件各程序加个壳。
通俗点说,就是UPX仅仅可以用来压缩EXE文件,而且压缩后的EXE文件还可以无需解压缩直接运行的,怎么样,很棒吧?
UPX压缩和未压缩文件的区别?
压缩过的可执行文件,虽然节约了点空间并且可以直接运行,不过运行的时候需要在内存进行解压,所以压缩过的文件比未压缩过的文件稍慢(理论上是这样,但一般情况下人是感觉不出这个慢的)。
UPX压缩的用途
主要是写程序的朋友,当然也有一些黑客喜欢使用UPX加壳来躲避杀毒软件的查杀。
UPX是一个通用可执行文件压缩器,由于其具有:
- 压缩率高:压缩效果优于zip/gzip;
- 解压速度快:在奔腾133上即可达到大约10MB/秒;
- 压缩的可执行文件没有额外的内存开销;
- 安全:可以列表,检测和解压可执行文件,压缩和解压缩文件内部都维持有一个校验和;
- 广域:可以压缩多种可执行文件格式:
- dos/exe
- dos/sys
- dos/com
- djgpp2/coff
- watcom/le ( 支持DOS4G, PMODE/W, DOS32a 和 CauseWay )
- win32/pe
- rtm32/pe
- tmt/adam
- linux/386
- atari/tos
- 免费
等特性,因此其也成为我们在压缩可执行文件时的首选工具。
UPX是一个控制台应用程序,以命令行方式进行操作,其使用是极其简单的:
upx [-命令] [-选项] [-o 目标文件] 源文件..下面我们以UPX1.07W为例,具体讲解其使用方法。默认情况下,UPX将直接对源文件
进行操作,但也可指定目标文件,而不覆盖源文件,文件名支持通配符,即一次可对多个文件进行同一操作。
一、显示 UPX 通用信息(版权信息,使用说明等),在命令行直接输入 UPX 并回车。
[root@localhost kk]# upxUltimate Packer for eXecutablesCopyright (C) 1996 - 2017
UPX 3.94 Markus Oberhumer, Laszlo Molnar & John Reiser May 12th 2017
Usage: upx [-123456789dlthVL] [-qvfk] [-o file] file..
Commands:-1 compress faster -9 compress better-d decompress -l list compressed file-t test compressed file -V display version number-h give more help -L display software license
Options:-q be quiet -v be verbose-oFILE write output to 'FILE'-f force compression of suspicious files-k keep backup files
file.. executables to (de)compress
Type 'upx --help' for more detailed help.
UPX comes with ABSOLUTELY NO WARRANTY; for details visit https://upx.github.io
(76条消息) UPX使用教程_梦想专栏-CSDN博客_upx怎么用