050-第三代软件开发-软件部署脚本(二)-LMLPHP

第三代软件开发-软件部署脚本(二)


关键字: QtQmlbashshell脚本

项目介绍

重要说明☝

☀该专栏在第三代软开发更新完将涨价

软件部署脚本(二)

在我们的程序可以开机自启动后,已经完成了以个正常的程序的部署过程,但是呢,我们的程序目前还存在一定的崩溃的隐患,同时老板也需要给客户演示,如果在客户现场奔溃了,你让老板现场插上键鼠打开命令框启动程序,那是不咋显示的,虽然我们也干过这样的事情,所以就有了这个第二版的启动脚本,增加了崩溃重启的代码,

代码如下

#!/bin/sh

# V2.0
# 此版本功能
# 程序崩溃会重复启动程序,直至正常关闭系统停止

# sh文件所在路径
base_path=$(cd `dirname $0`; pwd)

file_path=$base_path/T_UserProfile/systemConfig.ini
section="SystemConfig"
key="close_program"
delimeter='='
val=false

awk -F "$delimeter" '/\['${section}'\]/{a=1} (a==1 && "'${key}'"==$1){gsub($2,"'${val}'");a=0} {print $0}' ${file_path} 1<>${file_path}

while true
do
    if [ -f "$file_path" ]
    then
        val=$(awk -F "$delimeter" '/\['${section}'\]/{a=1}a==1&&$1~/'${key}'/{print $2;exit}' $file_path)
        echo ${val}
    else
        val=false
    fi


    if [ "$val" = true ]
    then
        echo "guanbi"
        break
    fi

    ps -ef | grep "Turing_PhotoElectric3*" | grep -v "grep"
    if [ "$?" -eq 1 ]
    then
        ./Turing_PhotoElectric3* --no-sandbox
    fi
done

exit 0



050-第三代软件开发-软件部署脚本(二)-LMLPHP
11-15 23:08