zoukankan      html  css  js  c++  java
  • Linux下使用脚本让程序顺序启动

    1 需求描述

    1. 实现一个脚本,使程序启动;
    2. 脚本能够控制程序的启动顺序,即先启动A程序后,再启动B程序。

    2 实现思路

    思路很简单,先定义一个进程列表,确保进程关闭后再按照顺序启动compositor和客户程序。

    3 脚本实现

    #!/bin/bash
    
    FireMenuBarPath=/root/bunfly/QtPro/FireMenuBar/FireMenuBar
    QuickUiPath=/root/bunfly/QtPro/QuickUi/QuickUi
    CompositorPath=/root/qt-everywhere-src-5.12.3/qtwayland/examples/wayland/ivi-compositor/ivi-compositor
    
    programs=(FireMenuBar QuickUi ivi-compositor)
    
    #kill programs
    for i in ${programs[@]}; do
      ps -ef | grep $i | grep -v grep | awk '{print $2}' | xargs kill -9
    done
    
    #check programs
    for i in ${programs[@]}; do
      procnum=` ps -ef | grep "$i" | grep -v grep | wc -l`
      if [ $procnum -eq 1 ];then
        sleep 1
      fi
    done
    
    #start env
    ivi=-1
    while(($ivi < 0))
    do  
      procnum=` ps -ef | grep "ivi-compositor" | grep -v grep | wc -l`  
    if [ $procnum -eq 0 ];then
      fbset -fb /dev/fb0 -g 600 800 600 800 16
      $CompositorPath &
    else
      QT_IVI_SURFACE_ID=1337 $FireMenuBarPath -platform wayland &
      $QuickUiPath -platform wayland &
      ivi=1	
    fi  
      sleep 1  
    done  
    
  • 相关阅读:
    django虚拟环境中报E: 无法定位软件包 sqliteman
    创建django项目
    Django虚拟环境安装
    python学习笔记(三)
    python学习笔记(二)
    python学习笔记(一)
    python 类属性和实例属性
    决策树的基本ID3算法
    KNN算法的简单实现
    webClient
  • 原文地址:https://www.cnblogs.com/luoxiang/p/13456278.html
Copyright © 2011-2022 走看看