有关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内核级别的开发工作。对于这些开发者...
【标题】: "浅析如何在C语言中调用Linux脚本" 【描述】: "本文将详细介绍在C语言环境中如何调用Linux操作系统中的脚本程序,为需要此技术的开发者提供参考。" 【标签】: "C语言", "调用", "Linux脚本" 【正文】: ...
命令行调试工具有时候能够完成图形化工具所不能的功能,比如更复杂的调试场景和脚本化的调试流程。 下面通过一个简单的调试示例来具体介绍GDB的使用方法。示例源代码tst.c是一个简单的C语言程序,包含一个计算求和...
5. **启动加载顺序**:配置u-boot从NAND flash的哪个位置加载内核和文件系统,这涉及到启动脚本(如`env`文件)的修改。 6. **环境变量**:设置和保存与NAND flash相关的环境变量,如启动设备、分区信息等,通常...
为了使设置的环境变量在重启后仍然有效,通常的做法是将相应的`export`命令添加到系统的启动脚本中,如`/etc/profile`或`~/.bashrc`。以将`DVSDK`环境变量设置为开机自动加载为例: 1. **编辑启动脚本**: 打开`/...
3.1.3 编写Shell脚本.................................................................................................... 38 3.1.4 正则表达式................................................................
在Windows环境下,nvcc还需要定位到vsvars.bat脚本来设置环境参数,以便cl编译器正确运行。如果cl不在默认路径,同样可以通过--compiler-bindir重新设定。此外,CUDA提供了一个预定义宏__CUDACC__,用于检测是否由...
当你在终端中使用`nohup command`来启动一个任务时,即使你关闭了终端,该任务也会继续执行。默认情况下,`nohup`会将标准输出重定向到`nohup.out`文件,如果该文件不可写,则会写入用户的主目录下。你可以通过`...
学习Linux基础包括安装操作系统、理解Linux文件系统、掌握常用命令,如ls、cd、cp等,并熟悉Linux启动过程。此外,还应了解如何设置环境变量和编写Shell脚本,这对于日常开发和自动化任务至关重要。 2. **Shell编程...
10. **Shell脚本编程**:介绍编写简单到复杂的Shell脚本,包括变量、条件语句、循环结构以及函数。 11. **服务器架设**:涵盖HTTP服务器(如Apache或Nginx)、FTP服务器、DNS服务器、邮件服务器、数据库服务器(如...
在添加了定时任务后,`crond` 进程会在每分钟检查 `crontab` 文件,如果发现有符合当前时间的任务,就会启动一个子进程执行这个任务。你可以通过查看 `/var/log/cron` 日志文件来监控 `crond` 的活动,以确保任务按...
在Linux环境中,可以使用自动化脚本来简化安装。首先,确保安装必要的依赖,如GCC编译器和pcre库。然后,解压并编译安装zlib和Nginx源代码。最后,编写systemd服务单元文件,使Nginx能被systemd管理,包括启动、停止...
上述配置中,`serve`脚本用于启动开发服务器,通过设置`NODE_ENV`为`development`,使得Vue CLI服务知道我们正在开发环境中工作,从而提供热重载、source map等开发友好特性。而`build`脚本用于构建生产版本的应用,...
#### U-BOOT内存布局及启动过程浅析 U-Boot的启动过程涉及多个步骤,从初始化硬件到加载操作系统内核。内存布局是指U-Boot在启动过程中如何利用内存资源。 ##### 内存布局 - **ROM区**: 存放启动代码,如 **start....
这通常通过`mysqld_safe`或`mysql_secure_installation`脚本来完成。此外,还需要设置MySQL服务自启动,并启动MySQL服务以确保其正常运行。 安装完成后,你可以通过`systemctl start mysqld`命令启动MySQL服务,...
1. **U-Boot给Kernel传RAM参数**:U-Boot可以通过设置特定内存区域(如`cmdline_ptr`)来向Linux内核传递启动参数。 2. **Kernel读取U-boot传递的相关参数**:Linux内核在启动过程中会解析这些参数,并根据这些参数...