论坛首页 综合技术论坛

怎样写shell,putty关闭后,后台程序仍旧会继续运行

浏览 7460 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2014-05-12  
我想用shell启动我的java程序,但是当我关闭putty时,java程序就停止了,如何能让我关闭putty,但是java程序仍旧运行?
tomcat是如何做到的,我看了startup.sh和catalina.sh没找到它是如何实现的
   发表时间:2014-05-12  
1)tomcat之类的是注册了service,这类做法比较复杂。
2)如果是对putty这样临时添加的程序,我到有个简单的办法,但是不适合作为产品。
方法安装tmux,在tmux中启动你的程序。
0 请登录后投票
   发表时间:2014-05-12   最后修改:2014-05-12
henry_wu001 写道
1)tomcat之类的是注册了service,这类做法比较复杂。
2)如果是对putty这样临时添加的程序,我到有个简单的办法,但是不适合作为产品。
方法安装tmux,在tmux中启动你的程序。

类似screen的命令?我刚才找到了screen的用法。
我并没有注册tomcat的service。
我试了一下,我在putty上运行startup.sh后关闭putty,tomcat在运行。
0 请登录后投票
   发表时间:2014-05-12  
1)你分析了startup.sh脚本了吗,它做了什么你清楚吗,
2)tmux和screen类似,比screen好用
0 请登录后投票
   发表时间:2014-05-12  
henry_wu001 写道
1)你分析了startup.sh脚本了吗,它做了什么你清楚吗,
2)tmux和screen类似,比screen好用

我看了,startup.sh就是调用catalina.sh,catalina是设置环境变量,如何运行命令:java ... Bootstrap
我猜想可能是在java里设置了setDaemon(true),但是没找到,现在要做别的,没有时间
0 请登录后投票
   发表时间:2014-05-13  
nohup java MainClass $* > $CATALINA_HOME/logs/catalina.out 2>&1 &
1 请登录后投票
   发表时间:2014-05-15  
在linux里面后台运行程序的方法就可以了,一般可以使用nohup.更多方法,可以参考:http://scmbob.org/run_processes_in_background.html。
如果需要定时重启可以使用crontab命令
0 请登录后投票
   发表时间:2014-05-18  
rrrrutdk 写道
nohup java MainClass $* > $CATALINA_HOME/logs/catalina.out 2>&1 &



正解
0 请登录后投票
   发表时间:2014-06-04  
setsid   xxx.sh
0 请登录后投票
   发表时间:2014-07-26  
nohup command &
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics