我开始使用nohup进行一些处理并且它们无法正常工作所以我需要找到并杀死它们但我不知道pid或任何东西.
我正在尝试nohup一个命令并以不同的用户身份运行它,但每次我这样做时都会产生两个进程.
例如:
$ nohup su -s /bin/bash nobody -c "my_command" > outfile.txt &
Run Code Online (Sandbox Code Playgroud)
这肯定会将my_command作为nobody运行,但是有一个我不想显示的额外进程:
$ ps -Af
.
.
.
root ... su -s /bin/bash nobody my_command
nobody ... my_command
Run Code Online (Sandbox Code Playgroud)
如果我杀死root进程,那么nobody进程仍然存在...但是有没有办法不运行root进程?因为获取my_command的id并将其删除有点复杂.
我有一个脚本来处理某些文件中的记录,通常需要1-2个小时.当它运行时,它会打印处理的记录数量的进度.
现在,我想要做的是:当它运行时nohup,我不希望它打印进度; 它应该只在手动运行时打印进度.
我的问题是如何知道bash脚本是否正在运行nohup?
假设命令是nohup myscript.sh &.在脚本中,如何nohup从命令行获取?我尝试使用$0,但它给了myscript.sh.
我有一个问题,node.js运行一个小型Web服务器来提供文件系统中的文件.当它启动时,node server.js它就像一个魅力,但当用nohup启动它或永远node.js找不到文件.
nohup command &可以在关闭终端后保持命令运行。我想播放目录中的所有 mp3 音乐Music。
ls Music/*mp3 |xargs -d "\n" mplayer
Run Code Online (Sandbox Code Playgroud)
ls Music/*mp3可以列出目录中的所有mp3文件,Music通过带有xargs的管道发送,-d "\n"是处理文件名中的空白。
我想将 allstdout和重定向stderr到/dev/null,并在后台运行它。
ls Music/*mp3 |xargs -d "\n" mplayer > /dev/null 2>&1 &
Run Code Online (Sandbox Code Playgroud)
这工作正常,但我希望它在关闭终端后运行。
nohup ls Music/*mp3 | xargs -d "\n" mplayer > /dev/null 2>&1 &
ls Music/*mp3 | xargs -d "\n" nohup mplayer > /dev/null 2>&1 &
ls Music/*mp3 | nohup xargs -d "\n" mplayer > /dev/null 2>&1 &
Run Code Online (Sandbox Code Playgroud)
当我关闭终端时,后台运行的进程结束。
为什么nohup …
我做了以下事情:
nohup find / &
rm nohup.out
Run Code Online (Sandbox Code Playgroud)
奇怪的是,nohup -command继续运行.我等待创建一个新文件.令我惊讶的是,没有这样的文件.命令的标准出在哪里?
我有一个基于Apache Mina用Java编写的网络操作的应用服务器.最近我在日志文件中遇到了一个奇怪的行为.我注意到日志文件中充满了@ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ ....字符.我的意思是那些意想不到的字符是大量的,因此日志文件在几个小时内获得数百GB!我对这个问题一无所知,谷歌几乎不可能.可能是什么原因?那些角色对任何人都熟悉吗?
如果需要,我可以提供有关应用程序的更多详细信
提前致谢.
当程序以nohup运行时,幕后执行的操作是什么?
父进程的PID是否正在更改?
谢谢.
编辑:我知道nohup(和disown)导致如果父进程收到SIGHUP,则不会将SIGHUP发送到进程.这是否意味着它等同于处理SIGHUP(实际上忽略它)?
大家好我想运行一个java应用程序作为后端进程.这就像tomcat server.For我已经开发了一个应用程序.并将一个类作为主类并从一个脚本文件.ie(startup.sh)file.in调用startup.sh文件我正在调用一个类.这是MainMethodClass.In主方法类我写了我的业务逻辑.当我在linux服务器上运行这个应用程序时,使用putty工作直到putty窗口没有关闭. putty窗口它也被停止了.但即使我关闭也需要运行这个应用程序.我怎么能实现这一点.
警告:危险的脚本.不要从命令行运行!
在公司的笑话电子邮件中看到这一点.有人可以向我解释为什么这个bash脚本比普通的'rm -rf'命令更危险吗?:
nohup cd /; rm -rf * > /dev/null 2>&1 &
Run Code Online (Sandbox Code Playgroud)
特别是,为什么使用nohup以及最后的元素是什么?
警告:危险的脚本.不要从命令行运行!
nohup ×10
bash ×4
linux ×4
java ×2
process ×2
apache-mina ×1
background ×1
delete-file ×1
forever ×1
logging ×1
node.js ×1
shell ×1
ssh ×1