linux下创建自解压包

1750阅读 0评论2014-04-11 mxcai2005
分类:LINUX

linux下的自解压打包工具在网上搜了一下发现主要就是两种, makeself 和 制作.bin 文件 
这里面主要是讲讲 makeself

主页:
source code:  

目前新的版本是2.1.5

从主页下载 makeself-2.1.5.run   然后 chmod +x makeself-2.1.5.run, 再执行它,会解压出一个名为makeself-2.1.5 的目录
里面包含有一个makeself.sh 文件 ,就是用他来打包文件,目前他支持这几种压缩格式:--gzip , -- bzip2 ,--pbzip2 , --xz

使用例子:
生成自解压包
# ./makeself-2.1.5/makeself.sh --notemp --bzip2  qtperf-0.2.1 qtperf.bz2 "just for test"  

解压
# ./qtperf.bz2
Creating directory qtperf-0.2.1
Verifying archive integrity... All good.
Uncompressing just for test..........................


为了方便可以用个脚本:
# cat makeself_cmd.sh

点击(此处)折叠或打开

  1. #!/bin/sh

  2. usage()
  3. {
  4.     echo "$0 filename "
  5.     exit 1
  6. }

  7. if [ $# != 1 ]; then
  8.     usage
  9. fi

  10. filename=`basename $1`
  11. src=$1
  12. dest=${filename}.bz2.run

  13. ./makeself-2.1.5/makeself.sh --notemp --bzip2 ${src} ${dest} "just for uncomperss itsel"

  14. chmod +x ${dest}



上述的方法有一个缺点就是只能以可执行文件执行解压

7zip
 
创建自解压包:
# 7za a  -sfx recycle.7z recycle  #其中 -sfx 就表示创建自解压的格式

解压包:
# ./recyce.7z

#  7za x recycle.7z 

有一个缺点是使用方也必须安装有7z 工具

关于7z 的更多用法  man 7z




上一篇:QT项目负责人必须掌握的Ui设计师功能——Promote to !
下一篇:xterm 支持中文