查看源代码
出自Linux Wiki
对
制作自解压安装文件
的源代码
根据以下的原因,您无权限进行编辑这个页面操作:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
Shell的强大功能使得Linux中自解压安装程序的制作变的很简单。 ==制作方法== 基本思路是创建一个文件,前半部分是一个Shell脚本,后半部分则是[[tar]]建立的压缩文件。Shell脚本调用tar解压文件的后半部分,再调用解压后的安装文件。本文给出的方法比较灵活,对安装脚本的行数没有要求。 ===准备脚本文件=== 先建立一个脚本文件,内容如下,存为''inst_script.sh''。'''注意将程序中间./installer一行修改为你的程序的安装程序地址'''。<ref>http://www.linuxjournal.com/node/1005818</ref> {{Note| 文件末尾不要添加更多的空行。}} <source lang=bash> #!/bin/bash echo "" echo "Self Extracting Installer" echo "" export TMPDIR=`mktemp -d /tmp/selfextract.XXXXXX` ARCHIVE=`awk '/^__ARCHIVE_BELOW__/ {print NR + 1; exit 0; }' $0` tail -n+$ARCHIVE $0 | tar xzv -C $TMPDIR CDIR=`pwd` cd $TMPDIR ./installer # 改为压缩包中安装程序的地址 cd $CDIR rm -rf $TMPDIR exit 0 __ARCHIVE_BELOW__ </source> ===准备压缩文件=== 把程序的压缩包准备好即可,假设名为''myfile.tar.gz'' ===制作安装包=== 直接使用cat命令把两个文件连在一起就可以了: $ cat inst_script.sh myfile.tar.gz > myinstaller $ chmod +x myinstaller ==原理简介== 下面给出带注释的代码 <source lang=bash line=true> #!/bin/bash echo "" echo "Self Extracting Installer" echo "" # 用mktemp建立一个临时文件夹 export TMPDIR=`mktemp -d /tmp/selfextract.XXXXXX` # 找到压缩文件在包中的偏移量,即含__ARCHIVE_BELOW__的下一行 ARCHIVE=`awk '/^__ARCHIVE_BELOW__/ {print NR + 1; exit 0; }' $0` # 解压文件 tail -n+$ARCHIVE $0 | tar xzv -C $TMPDIR CDIR=`pwd` cd $TMPDIR ./installer # 改为压缩包中安装程序的地址 cd $CDIR rm -rf $TMPDIR exit 0 __ARCHIVE_BELOW__ </source> ==参考资料== <references/> [[Category: Shell技巧]]
在这个页面上使用的模板有:
Template:Note
(
查看源码
)
返回到
制作自解压安装文件
。
导航
首页
社区入口
当前事件
最近更改
随机页面
帮助
查看
页面
讨论
查看源代码
历史
个人工具
登录/创建账户
搜索
简体繁体转换
不转换
简体
繁體
工具箱
链入页面
链出更改
特殊页面