我想要一种在shell脚本中编写守护进程的方法,该脚本在循环中运行另一个应用程序,如果它死了则重新启动它.
./myscript.sh从SSH会话运行时,它将启动守护程序的新实例,除非该守护程序已在运行../myscript -stop)可以杀死任何现有的守护进程.(关于编辑的注意事项 - 原始问题指出nohup并且可能不使用类似工具.这个人工要求是一个"XY问题",并且接受的答案实际上使用了OP声称无法使用的所有工具.)
我想在验证用户启动服务器应用程序的授权后,启动一个用java编写的服务器应用程序.所以,我尝试使用它来实现它System.console().问题是我的服务器应用程序已启动使用nohup.所以,System.console()总是返回null ...
如何在使用nohup启动的JVM中安装基于控制台的用户名和密码输入.
我有一个bash脚本通过nohup运行命令,我需要脚本中的proccess id.
我试过这个:
#!/bin/bash
nohupResult=$((nohup mycommand > nohup.out &) 2>&1)
echo $nohupResult
exit 0
Run Code Online (Sandbox Code Playgroud)
但是$nohupResult没有.
我也尝试了这个:
nohupResult=`nohup mycommand > nohup.out &`
Run Code Online (Sandbox Code Playgroud)
但是$nohupResult也是无效的.
如果我nohup mycommand > nohup.out &在shell中运行命令,我会得到一些输出,如:
[1] 447019
Run Code Online (Sandbox Code Playgroud)
但是我如何在脚本中获取进程ID?
任何帮助将非常感激.
无法弄清楚在RedHat Linux中启动jboss EAP 6.1的正确方法.
nohup ./dev/jboss-eap-6.1/bin/standalone.sh 2>&1 < /dev/null &
Run Code Online (Sandbox Code Playgroud)
要么
nohup ./dev/jboss-eap-6.1/bin/standalone.sh 2>&1 > /dev/null &
Run Code Online (Sandbox Code Playgroud)
对我来说后者更有意义,但是当我用Google搜索时,我找到了第一个.
另外,以上是在服务器中启动jboss的正确方法之一,以便在我注销时不会退出吗?或者有更好的方法(比如sudo的东西)?
-SGB.
我正在使用
nohup ./program_name &
Run Code Online (Sandbox Code Playgroud)
为了运行我的程序,program_name 会打印出正在运行的进程的一些值和状态,包括程序已完成的百分比,但由于我使用 nohup 运行它,所以我看不到我的程序有多接近完成,有没有无论如何我仍然可以获得这些信息?
我在后台运行我的程序如下:
nohup ./program -c config.cfg &
Run Code Online (Sandbox Code Playgroud)
所以我在我的程序中看到了分段错误,并决定使用gdb. 我的程序有一些无限循环,再次处理分段错误错误可能需要几个小时。
所以我想在后台运行程序。
我应该如何将 gdb 参数传递给nohup?
Julia 中的示例:假设我有一个包含以下代码的文件“test.jl”:
for i in 1:3
sleep(2)
print("i = ", i, "\n")
end
Run Code Online (Sandbox Code Playgroud)
那么如果我跑
nohup julia test.jl &
Run Code Online (Sandbox Code Playgroud)
我不会每 2 秒得到一次打印结果。相反,我将在最后获得所有三个打印结果,这对于监视需要永远完成的循环的进度是无用的。
有什么建议?
我有一个bash脚本,我从Jenkins的构建步骤调用.在这个bash脚本中是一个nohup命令,用于在后台调用不同的脚本,例如:
#!/bin/bash
nohup otherScript.sh &
Run Code Online (Sandbox Code Playgroud)
构建步骤完成后,我将转到应该创建nohup.out的路径,但那里什么都没有.关于发生了什么的任何想法?
据我所知,nohup可以保持流程运行而不关心终端的退出.但是我发现当我在后台运行一个进程(没有nohup)时最后使用&符号(&),然后退出终端,我仍然可以找到在该机器上运行的进程.
这是一个简单的例子; 我运行以下命令,然后退出终端:
ping localhost &
Run Code Online (Sandbox Code Playgroud)
但是,我发现"ping"进程仍在机器中运行,即使我没有nohup在这里使用.我误解了它nohup的真实用法吗?
我第一次只是在nohupUbuntu服务器上玩游戏.我阅读了一些关于nohup运行命令的文档,并了解了运行命令,例如nohup ./server.sh &.
我想知道的是,我应该如何运行JMeter脚本(无头模式)nohup?以下是我需要运行的脚本nohup:
./jmeter.sh -n -t /home/chamith/WSO2MB/new/apache-jmeter-2.13/bin/GamesSubscriber.jmx
当我尝试nohup在脚本中使用正常操作时,总是会抛出一个错误说-n command not found.我该如何继续这个?任何帮助,将不胜感激.