在Linux中tomcat执行shutdown.sh之后进程还存在

这篇具有很好参考价值的文章主要介绍了在Linux中tomcat执行shutdown.sh之后进程还存在。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第一步,tomcat执行shutdown.sh之后进程还存在,我们可以发现项目中存在非守护线Thread.currentThread().setDaemon(false);。

第二步,配置/usr/local/tomcat/bin/catalina.sh文件,可以记录tomcat进程PID。

在/usr/local/tomcat/bin/catalina.sh文件中添加代码得到下面的内容:

# Get standard environment variables

PRGDIR=`dirname "$PRG"`

if [ -z "$CATALINA_PID" ]; then

      CATALINA_PID=$PRGDIR/CATALINA_PID

fi

第三步,配置/usr/local/tomcat/bin/shutdown.sh文件,使得shutdown时强制关闭进程。

在/usr/local/tomcat/bin/shutdown.sh文件中修改最后一行代码得到下面的内容:

exec "$PRGDIR"/"$EXECUTABLE" stop -force "$@"

第四步,验证。

先进入/usr/local/tomcat/bin文件夹,使用命令“./startup.sh”启动tomcat服务,可以发现结果的最后一行显示启动tomcat服务时使用了CATALINA_PID。

然后使用命令“./shutdown.sh”关闭tomcat服务,可以发现结果的最后两行显示已经kill掉了tomcat进程。

最后使用命令“ps -ef|grep tomcat”查看,可以发现tomcat进程已经不存在了,tomcat服务已经成功关闭。文章来源地址https://www.toymoban.com/news/detail-785816.html

到了这里,关于在Linux中tomcat执行shutdown.sh之后进程还存在的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux终端执行.sh脚本,提示权限不够的解决办法

    错误提示如下: [root]# ./run_train_p bash: ./run_train_p: 权限不够 解决方法 [root]# chmod 777 ./run_train_p [root]# ./run_train_p

    2024年02月14日
    浏览(33)
  • 在Linux系统中执行.sh文件的几种方法

    cd到.sh文件所在的目录,然后执行./xxx.sh 【前提:该./sh文件要有可执行的权限,chmod u+x xxx.sh】 在.sh文件路径下直接使用sh加.sh文件名即可 【是否有可执行权限都可以】 注意事项:**用“./”加文件名.sh执行时,必须给.sh文件加x执行权限 ./home/test/shell/hello.sh,可以这样运行是

    2024年02月12日
    浏览(33)
  • 在linux系统下中.sh文件无法执行的问题及两种解决方法

    在写了shell脚本1.sh文件后,想要执行该脚本,结果提示我权限不够: 然后我就加上了管理员的权限:(其实这里提示的并不是管理员的权限不够,而是这个shell脚本并没有执行的权限)  结果提示我找不到命令,但是我使用ls查看后,发现1.sh文件存在。 解决方法一: 首先我

    2024年02月11日
    浏览(31)
  • Linux: 进程地址空间究竟是什么?进程地址空间存在意义何在?

     在C/C++中,我们常将内存分为: 代码区、常量区、全局区(静态区)、堆、栈 等等。相关内存区域划分如下:(X86, 32位平台) 如何验证C/C++中各区域的相对位置呢?  我们可以在每个区域中选择一个地址来验证C/C++中各区域的相对位置!!具体如下: 【源代码】: 【运行

    2024年04月08日
    浏览(64)
  • 【Linux】为.sh脚本制作桌面快捷方式(.desktop,可双击执行),且替换显示图标(图文详情)

    目录 0.背景+环境 1、原理 2、详细步骤  1)创建.desktop快捷方式 2) 给test.desktop快捷方式增加可执行权限 3)编辑test.desktop内容和参数 4)修改快捷方式属性为双击可执行 5)将桌面快捷方式发送到桌面 ubuntu 16.04 项目需求,目前有一个可执行程序(test.sh),test.sh这个脚本是执

    2024年02月13日
    浏览(31)
  • Linux 如何处理tomcat/springboot进程控制台日志

    ① Tomcat catalina.out其实是tomcat的标准输出(stdout)和标准出错(stderr),这是在tomcat的启动脚本里指定的,如果没有修改的话stdout和stderr会重定向到这里。所以我们在应用里使用System.out打印的东西都会到这里来。另外,如果我们在应用里使用其他的日志框架,配置了向Console输出的

    2024年02月16日
    浏览(30)
  • 高效管理 Linux 进程:如何后台执行程序、查看进程、终止任务

    高效管理 Linux 进程:如何后台执行程序、查看进程、终止任务 nohup :nohup是“no hangup”的缩写,用于在后台不挂断的运行命令,使其在用户退出或终端关闭时不受影响。它通过忽略挂断(SIGHUP)信号实现这一功能。换句话说,nohup 是一条 Unix 命令,用于在后台执行程序,即使

    2024年02月10日
    浏览(38)
  • [QCA6174]QCA6174 DFS认证4.6.2.3 Channel Shutdown出现跳转之后在原始信道上有弱信号问题分析及解决方案

    4.6.2.1 Channel Availability Check ---信道可用性检查        定义其作为雷达脉冲检测机制,当雷达脉冲出现时所占用的信道需要能被设备检测到已经被占用。当相关信道未被占用时,这些信道被称为Avaliable Channel可用信道 4.6.2.2 In-Service Monitoring ---在线监测        定义为设备持续

    2024年02月08日
    浏览(29)
  • Linux下的系统编程——进程的执行与回收(八)

    前言: 前面我们对进程已经有了一个初步的了解与认识,现在让我们学习一下进程中一些函数的具体使用,比如exec可以执行一些指定的程序,wait / waitpid可以回收子进程,什么是孤儿进程,什么是僵尸进程,下面让我们一起对这些进行中的操作进行学习吧 目录 一、exec函数族

    2024年02月09日
    浏览(36)
  • 【Linux】进程与可执行程序的关系&&fork创建子进程&&写实拷贝的理解

            系统会将此时在系统运行的进程的各种属性都以文件的形式给你保存在系统的proc目录下。 运行一个程序的时候,本质就是把磁盘中的程序拷贝到内存中,当一个进程运行起来的时候,它本质已经和磁盘中的可执行程序没有直接关系了。   当前我的myprocess程序正在运

    2024年03月19日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包