`
pouyang
  • 浏览: 321536 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

有关linux启动脚本的浅析

 
阅读更多

 

 

有关linux启动脚本的浅析: 

 

1、参数脚本。

      #应用id,应用的唯一标识。

        APP_NAME=APP_01  

        APP_DIR=../

        APP_BIN=${APP_DIR}/bin

        APP_LIB=${APP_DIR}/lib

        APP_LOG=${APP_DIR}/log

        APP_SCRIPT=${APP_DIR}/script

 

2、路径脚本。

        . para

       CLASSPATH=

       CLASSPATH=$CLASSPATH:${APP_BIN}

       for jarfile in `ls -1 ../lib/*.jar`

       do

           CLASSPATH="$CLASSPATH:$jarfile"

       done

       #export CLASSPATH

 

3、启动脚本。

        #! /bin/bash

        clear

        . para

        . class_path

        #编码方式

        export LANG=zh_CN.GB18030

        echo $LANG

        cd ${APP_BIN}

        echo "${APP_NAME} starting ..."

        sleep 1

        nohup java -Xms256m -Xmx512m -Xss256k -Dflag=${PLATFORM2_NAME} -XX:PermSize=128m -XX:MaxPermSize=256m -Djava.security.policy="policy.txt" -Djava.rmi.server.codebase=file://${PLATFORM2_BIN}/ -cp ${CLASSPATH} com.umpay.app.Start >${APP_LOG}/console.out &

        cd ${APP_SCRIPT}

        #sleep 1

        tail -50f ${APP_LOG}/console.out

 

4、停止脚本。

        4.1)、方式一

        #! /bin/bash

        sleep 1

        ps -ef|grep Dflag=${APP_NAME}|grep -v grep|grep -v tail|awk 'BEGIN{printf "kill "}{printf "%s ", $2}'|bash

        echo "${APP_NAME} stopped!

 

        4.2)、方式二

        #! /bin/bash

        . para

        c=0

        while [ $c -eq 0 ]

        do

         echo "do" 

          result=`ps -ef|grep "Dflag=${APP_NAME}"|grep -v grep`

          if [ -n "${result}" ]

                then

                 echo $result

                 ps -ef|grep Dflag=${APP_NAME}|grep -v grep|grep -v tail|awk 'BEGIN{printf "kill "}{printf "%s ", $2}'|bash

                 result=`ps -ef|grep "Dflag=${APP_NAME}"|grep -v grep`

                 sleep 2

                else

                 c=1

                 echo "else"

         fi

        done 

        echo "结束"

 

 

4.3)、方式三
#! /bin/bash
. para
c=0
while [ $c -eq 0 ]
do
 echo "do" 
  result=`ps -ef|grep "Dflag=${PLATFORM2_NAME}"|grep -v grep`
  if [ -n "${result}" ]
        then
         echo $result
         ps -ef|grep Dflag=${PLATFORM2_NAME}|grep -v grep|grep -v tail|awk 'BEGIN{printf "kill "}{printf("%s", $2)}' | bash
         result=`ps -ef|grep "Dflag=${PLATFORM2_NAME}"|grep -v grep`
         if [ -n "${result}" ]
         then 
          ps -ef|grep Dflag=${PLATFORM2_NAME}|grep -v grep|grep -v tail|awk 'BEGIN{printf "kill -9 "}{printf("%s", $2)}' | bash
         fi
         sleep 2
        else
         c=1
         echo "else"
 fi
done 
echo "结束

 

 

5、重启脚本。

        #! /bin/bash

        ./unserv.sh

        sleep 5

        ./start.sh

 

6、状态脚本。

        . para

        result=`ps -ef|grep "Dflag=${APP_NAME}"|grep -v grep`

        if [ -n "${result}" ]

        then

            echo "${APP_NAME} is running."

        else

            echo "${APP_NAME} not found..."

        fi

 

7、日志脚本。

        #! /bin/bash

        clear

        . para

        sleep 1

        tail -30f ${APP_NAME}/console.out

 

分享到:
评论

相关推荐

    Linux内核配置系统浅析

    ### Linux内核配置系统浅析 #### 一、配置系统的重要性及基本结构 随着Linux操作系统在各个领域的广泛应用,尤其是在嵌入式系统领域的迅速发展,越来越多的技术人员投身于Linux内核级别的开发工作。对于这些开发者...

    浅析如何在c语言中调用Linux脚本

    【标题】: "浅析如何在C语言中调用Linux脚本" 【描述】: "本文将详细介绍在C语言环境中如何调用Linux操作系统中的脚本程序,为需要此技术的开发者提供参考。" 【标签】: "C语言", "调用", "Linux脚本" 【正文】: ...

    linux c/c++ gdb浅析

    命令行调试工具有时候能够完成图形化工具所不能的功能,比如更复杂的调试场景和脚本化的调试流程。 下面通过一个简单的调试示例来具体介绍GDB的使用方法。示例源代码tst.c是一个简单的C语言程序,包含一个计算求和...

    基于ARM平台和NAND flash启动技术的u-boot移植过程浅析.pdf

    5. **启动加载顺序**:配置u-boot从NAND flash的哪个位置加载内核和文件系统,这涉及到启动脚本(如`env`文件)的修改。 6. **环境变量**:设置和保存与NAND flash相关的环境变量,如启动设备、分区信息等,通常...

    浅析linux环境变量export命令详解

    为了使设置的环境变量在重启后仍然有效,通常的做法是将相应的`export`命令添加到系统的启动脚本中,如`/etc/profile`或`~/.bashrc`。以将`DVSDK`环境变量设置为开机自动加载为例: 1. **编辑启动脚本**: 打开`/...

    LINUX系统开发技术详解---基于ARM

    3.1.3 编写Shell脚本.................................................................................................... 38 3.1.4 正则表达式................................................................

    浅析CUDA编译流程与配置方法(2)

    在Windows环境下,nvcc还需要定位到vsvars.bat脚本来设置环境参数,以便cl编译器正确运行。如果cl不在默认路径,同样可以通过--compiler-bindir重新设定。此外,CUDA提供了一个预定义宏__CUDACC__,用于检测是否由...

    浅析Linux中使用nohup及screen运行后台任务的示例和区别

    当你在终端中使用`nohup command`来启动一个任务时,即使你关闭了终端,该任务也会继续执行。默认情况下,`nohup`会将标准输出重定向到`nohup.out`文件,如果该文件不可写,则会写入用户的主目录下。你可以通过`...

    嵌入式系统学习基础知识浅析

    学习Linux基础包括安装操作系统、理解Linux文件系统、掌握常用命令,如ls、cd、cp等,并熟悉Linux启动过程。此外,还应了解如何设置环境变量和编写Shell脚本,这对于日常开发和自动化任务至关重要。 2. **Shell编程...

    鸟哥的私房菜第四版

    10. **Shell脚本编程**:介绍编写简单到复杂的Shell脚本,包括变量、条件语句、循环结构以及函数。 11. **服务器架设**:涵盖HTTP服务器(如Apache或Nginx)、FTP服务器、DNS服务器、邮件服务器、数据库服务器(如...

    浅析Shell中的定时任务 crontab

    在添加了定时任务后,`crond` 进程会在每分钟检查 `crontab` 文件,如果发现有符合当前时间的任务,就会启动一个子进程执行这个任务。你可以通过查看 `/var/log/cron` 日志文件来监控 `crond` 的活动,以确保任务按...

    深入浅析nginx部署及简单优化

    在Linux环境中,可以使用自动化脚本来简化安装。首先,确保安装必要的依赖,如GCC编译器和pcre库。然后,解压并编译安装zlib和Nginx源代码。最后,编写systemd服务单元文件,使Nginx能被systemd管理,包括启动、停止...

    深入浅析vue中cross-env的使用

    上述配置中,`serve`脚本用于启动开发服务器,通过设置`NODE_ENV`为`development`,使得Vue CLI服务知道我们正在开发环境中工作,从而提供热重载、source map等开发友好特性。而`build`脚本用于构建生产版本的应用,...

    uboot1.1.6代码分析

    #### U-BOOT内存布局及启动过程浅析 U-Boot的启动过程涉及多个步骤,从初始化硬件到加载操作系统内核。内存布局是指U-Boot在启动过程中如何利用内存资源。 ##### 内存布局 - **ROM区**: 存放启动代码,如 **start....

    浅析CentOS6.8安装MySQL8.0.18的教程(RPM方式)

    这通常通过`mysqld_safe`或`mysql_secure_installation`脚本来完成。此外,还需要设置MySQL服务自启动,并启动MySQL服务以确保其正常运行。 安装完成后,你可以通过`systemctl start mysqld`命令启动MySQL服务,...

    uboot代码详细分析

    1. **U-Boot给Kernel传RAM参数**:U-Boot可以通过设置特定内存区域(如`cmdline_ptr`)来向Linux内核传递启动参数。 2. **Kernel读取U-boot传递的相关参数**:Linux内核在启动过程中会解析这些参数,并根据这些参数...

Global site tag (gtag.js) - Google Analytics