Cat将所有安装包打包一个可执行文件(bin等),实现一键安装
2023-12-14 17:32:50
0、参考
1、文件分布
-?install.sh
-?run.sh
-?ai_server_arrange
? ? ? ? -?build_all.sh
? ? ? ? - 其他安装包
2、各个文件的代码
1、构建可执行文件脚本:run.sh
#!/bin/bash
# 1、将需要安装的离线包,和安装脚本打包
tar -czvf ./combat.tar.gz ./ai_server_arrange
# 2、将安装脚本和压缩包打包成可执行文件
cat install.sh combat.tar.gz > installer.bin
# 3、给可执行的权限
sudo chmod +x installer.bin
2、安装脚本:?install.sh
#!/bin/bash
lines=14 #这个值是指这个脚本的行数加 1,这个脚本共有 14 行
tail -n +$lines $0 >./combat.tar.gz # $0 表示脚本本身,这个命令用来把从 $lines 开始的内容写入一个 combat.tar.gz 文件里。combat.tar.gz 这个文件就是步骤一>得到的压缩文件,可以自行替换名称后缀和路径
cleanup() {
rm -f combat.tar.gz
rm -r -f ai_server_arrange
}
trap cleanup SIGINT # ctrl + c 中断时清理文件
tar zxvf ./combat.tar.gz #解压该文件
cd ai_server_arrange/ && bash build_all.sh # 运行调用build_all.sh脚本,安装deb等文件或其他安装命令
cd ../ && rm -r ai_server_arrange # 删除生成的文件
exit 0
3、运行
sudo chmod +x installer.bin
sudo ./installer.bin
4、生成的结果?
文章来源:https://blog.csdn.net/caip12999203000/article/details/134998640
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!