设为首页收藏本站

融智技术学院

 找回密码
 注册

QQ登录

只需一步,快速开始

Metasploit漏洞利用基础教程大学霸内部资料
搜索
查看: 423|回复: 0

【Liunx每日一问】:如何检查Oracle forms 11g进程是否正在运行呢?

[复制链接]
MrLi 发表于 2013-11-15 14:00:00 | 显示全部楼层 |阅读模式
问题:我搭建了一个服务器,调用oracleforms命令来启动Oracle Forms服务,现在我想要写一个脚本,通过任务计划来调用该脚本,检查oracle forms服务每天是否在运行。但是,我不知道Forms服务器的进程名。*WLS_FORMS*似乎不运行,下面是我的脚本:
  1. #!/bin/bash
  2. if [ -z "$(pgrep WLS_FORMS)" ]; then
  3.   echo "Process is not running."
  4.   service oracleforms start
  5. else
  6.   echo "Process is running."
  7. fi
复制代码

我执行ps aux | grep WLS_FORMS返回一些长字符串,如下所示:
  1. oracle 4518 1.4 13.1 1434532 533068 ? Sl 15:39 1:08 /usr/java/jdk1.6.0_3 9/bin/java -server -Xms256m -Xmx512m -XX:MaxPermSize=512m -Dweblogic.Name=WLS_FORMS - Djava.security.policy=/home/oracle/Oracle/Middleware/wlserver_10.3/server/lib/weblogi c.policy -Dweblogic.ProductionModeEnabled=true -Dweblogic.security.SSL.trustedCAKeySt....
复制代码


回答:我发现forms 服务通过java使用Dweblogic.Name=WLS_FORMS参数启动了。
从ps aux | grep WLS_FORMS命令执行的结果中能检查到这个信息,所以我修改这个脚本如下,它现在运行很好。
  1. #!/bin/bash
  2. if [ $( ps aux | grep WLS_FORMS |wc -l) -eq 1 ]
  3. then
  4.   echo "Process is not running."
  5.   service oracleforms start
  6. else
  7.   echo "Process is running."
  8. fi
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

新突破电商

小黑屋|手机版|Archiver|融智技术学院 ( 京ICP备09018999号  

GMT+8, 2018-8-18 21:53

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表