两段代码,第二段比较好些。

下面是Split输出结果方式的代码:

#!/usr/local/bin/perl
#Date:2015-07-07
print "Begin to restart tomcat\n";
my $output = `ps -ef|grep tomcat`;
print "$output\n";my $pid="-1";
my @arr=split(/\n/,$output);
$length=@arr;$index=0;
while($index<$length){$line=$arr[$index];my @arrLine=split(/\s+/,$line);if($arrLine[0] eq "root" && $arrLine[2] eq "1" && $arrLine[3] eq "99"){$pid=$arrLine[1];print "Found tomcat's pid=$pid\n";}$index++;
}if($pid eq "-1"){print "No tomcat run,will start it\n";system("/home/rtt8/apache-tomcat-7.0.42/bin/startup.sh");print "Tomcat was started\n";
}else{system("kill -9 $pid");print "Tomcat was killed\n";system("/home/rtt8/apache-tomcat-7.0.42/bin/startup.sh");print "Tomcat have been restarted\n";
}

下面是正则表达式查找输出结果的代码

#!/usr/local/bin/perl
#Date:2015-07-07print "1.Find running tomcat\n";
my $output = `ps -ef|grep tomcat`;
print "$output\n";if($output=~/(root)\s+(\d+)\s+(1)\s+(99)/){$pid=$2;print "Found running tomcat's pid=$pid\n";system("kill -9 $pid");print "Running tomcat was killed\n";
}else{print "No running tomcat,will start it\n";
}print "\n2.Start tomcat\n";
system("/home/rtt8/apache-tomcat-7.0.42/bin/startup.sh");
print "Tomcat was started.\n";

本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/xiandedanteng/p/4628311.html,如需转载请自行联系原作者

两段用来启动/重启Linux下Tomcat的Perl脚本相关推荐

  1. linux tomcat启动nohup,linux下tomcat添加服务

    一,脚本文件,编辑好后放在/etc/rc.d/init.d/下面 #!/bin/sh #chkconfig: 2345 10 90 # description: Starts and Stops th ...

  2. linux下tomcat脚本,Linux下重启多个 tomcat 服务的脚本(推荐)

    由于修改tomcat的配置文件或手动操作数据库数据后,tomcat的缓存和redis的缓存很严重,需要经常重启tomcat来释放缓存,经常就是手动重启. # 1.查找tomcat的进程ID ps -e ...

  3. uefi怎么添加linux启动项,linux下添加UEFI启动项

    今天突然发生了一件怪事,系统重启后没有了硬盘的uefi启动项, 吓了我一跳,我以为硬盘挂了,立即进livecd查看硬盘信息,好在一切正常. 我的电脑通常会自动添加应该第一分区(esp分区)里的一些启动 ...

  4. Linux下Tomcat启动报错:port already in use

    Linux下Tomcat启动报错:port already in use,导致该问题的原因很多,我在这里记录一下我遇到的情况的解决办法. 检查了${TOMCAT_HOME}/conf/server.x ...

  5. 解决Linux下无法利用shell脚本启动conda虚拟环境问题

    解决Linux下无法利用shell脚本启动conda虚拟环境问题 问题 直接在脚本中激活conda环境时遇到了一个问题 解决 查看.bashrc文件 .bashrc文件在 /home/用户名 里面,因 ...

  6. 查看linux下tomcat启动日志

    目录 查看linux下tomcat启动日志 但是通过浏览器无法访问 备注:防火墙常用操作 通过日志文件查找浏览器无法访问原因 查看linux下tomcat启动日志 启动tomcat之后,通过ps -e ...

  7. linux 防止启动多个进程,linux下tomcat启动后出现多个java进程解决办法

    当前位置:我的异常网» Linux/Unix » linux下tomcat启动后出现多个java进程解决办法 linux下tomcat启动后出现多个java进程解决办法 www.myexception ...

  8. linux启动sh文件命令,Linux下如何写 .sh 脚本启动 项目

    Linux下如何写 .sh 脚本启动 项目 创建文件   mealcoupon.sh 内容如下: #!/bin/bash #这里可替换为你自己的执行程序,其他代码无需更改 APP_NAME=xhqy_ ...

  9. linux追踪tomcat报错信息,linux下tomcat服务的启动、关闭与错误跟踪

    linux下tomcat服务的启动.关闭与错误跟踪,远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务: 1).启动tomcat服务 进入tomcat主目录下的bin目录,然后执行如下 ...

最新文章

  1. 电脑测速软件_康佳电视免费看直播,如何安装第三方软件?2个方法值得收藏...
  2. Scikit-Learn 机器学习笔记 -- SVM
  3. python简易版成绩管理系统_Python 实现简易版成绩管理系统
  4. VS与QT的路径查找差异
  5. Java开源项目:Spring Integration
  6. C++存储区域基础概念详解
  7. PyTorch: torch.optim 的6种优化器及优化算法介绍
  8. 爬虫告诉你, 互联网大数据行业有多赚钱!
  9. Hexo+Github搭建个人博客(一)——开始搭建
  10. Linux下安装Redis讲解
  11. java异步编程书籍_《Java异步编程实战》隆重上市!!!
  12. 制冷与空调设备运行操作作业题库(含答案)
  13. nagios原理介绍以及安装部署配置使用
  14. 【K最近邻法(KNN)】的Python和R语言简单实现鸢尾花分类
  15. 云服务优缺点_云服务器优点和缺点
  16. 移动硬盘打不开,千万别轻易格式化
  17. 第5章.网站首页高可用nginx+lua
  18. android 固件管理器,刷机精灵(原Android固件管理器桌面版)
  19. CUMT2021一道SSRF
  20. git已经配好密钥,仍需要输入密码的问题

热门文章

  1. $ionicConfigProvider-ionic 中默认安装后tap导航在顶部怎么j解决
  2. Groovy 之 Closure
  3. (0066)iOS开发之UITableViewCell上子控件通过superView找对应的cell的探究
  4. PAT甲级——1102 Invert a Binary Tree (层序遍历+中序遍历)
  5. 公司最喜欢什么样的程序员?
  6. TouchDesigner 编译FlexChop
  7. 【C语言】两种方式实现冒泡排序算法
  8. [shell实例]——用脚本实现向多台服务器批量复制文件(nmap、scp)
  9. 计算机网络系统--Microsoft Lync 与 腾讯通RTX 对比(转载)
  10. error: xxxx.o: Relocations in generic ELF (EM: 3)解决办法