1.打包脚本
package文件夹下放一个程序文件夹OvitFrame文件夹、package.sh脚本、install.sh脚本;执行package.sh脚本将OvitFrame文件夹压缩成一个压缩包,然后将install.sh和压缩包用cat命令生成一个run包;然后就
#!/bin/bash #将源文件打包成压缩包 tar czvf OvitFrame.tar.gz OvitFrame #创建.run的输出目录 mkdir -p output #从外界获取输入的版本号 version=5.0.300 datetime=$(date "+%Y%m%d%H%M%S") # 打包生成.run文件 cat install.sh OvitFrame.tar.gz > output/OvitFrame"$datetime"_"$version".run # 删除之前的文件压缩包 rm -f OvitFrame.tar.gz
安装脚本
#!/bin/bash #跳转行数,负责定位到压缩包所在的位置,这个值是指这个脚本的行数加1,这个脚本共有72行 lines=76 #检查系统的架构是否符合 if [[ "x86_64" =~ "$(arch)" ]] then echo "架构相同" else echo "架构不同, 本机架构为$(arch)" exit 0 fi homepath=~ #获取安装路径 echo "输入安装路径, 按下回车确认,默认路径(${homepath})" read -p "请输入:" installpath if [ ! -n "$installpath" ]; then installpath=$homepath fi #解压对应的程序包 #根据安装脚本的行数,跳转到压缩包所在的位置 tail -n +$lines $0 > OvitFrame.tar.gz #解压缩 tar zxvf OvitFrame.tar.gz #将解压缩之后文件拷贝到对应的安装目录 mkdir -p $installpath/install/ cp -r OvitFrame $installpath/install/ #检查用户路径,获取桌面路径 test -f ~/.config/user-dirs.dirs && . ~/.config/user-dirs.dirs desktopDir=~/${XDG_DESKTOP_DIR##*/} echo $desktopDir #要在可执行程序同路径下创建OvitFrame.desktop快捷方式 sed -i "s#INSTALLPATH#${installpath}#g" $installpath/install/OvitFrame/OvitFrame.desktop #applications文件夹如果不存在则创建 if [ ! -d ~/.local/share/applications ];then mkdir -p ~/.local/share/applications fi #拷贝桌面快捷方式 echo " $installpath/install/OvitFrame/OvitFrame.desktop" cp $installpath/install/OvitFrame/OvitFrame.desktop ~/.local/share/applications #自定义协议启动 xdg-mime default OvitFrame.desktop x-scheme-handler/clerk #快捷方式发送到桌面,并修改可执行权限 cp $installpath/install/OvitFrame/OvitFrame.desktop ${desktopDir} chmod +x ${desktopDir}/OvitFrame.desktop chmod 777 $installpath/install/OvitFrame/* chmod 777 $installpath/install/OvitFrame/components/AnalysisCenter/* chmod 777 $installpath/install/OvitFrame/components/LicenseVerify/* chmod 777 $installpath/install/OvitFrame/components/ls/* chmod 777 $installpath/install/OvitFrame/components/ls/script/* chmod 777 $installpath/install/OvitFrame/components/videoPlayer/* #移除无用文件 rm -rf $installpath/install/OvitFrame/OvitFrame.desktop rm -rf OvitFrame rm -rf OvitFrame.tar.gz #echo " we need root to excuate the script install.sh" #sudo -s $installpath/install/OvitFrame/install.sh exit 0
标签:run,国产化,tar,installpath,chmod,desktop,OvitFrame,install,编译程序 From: https://www.cnblogs.com/bclshuai/p/17454138.html