我正在使用SSH连接访问一个运行CentOS(linux发行版)的服务器。由于我不能总是保持登录状态,我使用“nohup [command] &”来运行我的程序。我不知道如何获得我使用nohup启动的所有程序的列表。“jobs”只在我注销之前有效。之后,如果我再次登录,jobs命令什么也不显示,但我可以在我的日志文件中看到我的程序仍然在运行。有没有办法得到我开始使用“nohup”的所有程序的列表?
lrpiutwd1#
当我开始使用$ nohup storm dev-zookeper时,
$ nohup storm dev-zookeper
**方法1:**使用jobs,
jobs
prayagupd@prayagupd:/home/vmfest# jobs -l [1]+ 11129 Running nohup ~/bin/storm/bin/storm dev-zookeeper &
nohup
ps
$ ps xw PID TTY STAT TIME COMMAND 1031 tty1 Ss+ 0:00 /sbin/getty -8 38400 tty1 10582 ? S 0:01 [kworker/0:0] 10826 ? Sl 0:18 java -server -Dstorm.options= -Dstorm.home=/root/bin/storm -Djava.library.path=/usr/local/lib:/opt/local/lib:/usr/lib -Dsto 10853 ? Ss 0:00 sshd: vmfest [priv]
TTY色谱柱,运行程序? =〉nohup。
?
说明
$ man ps #然后搜索
$ man ps
f8rj6qna2#
你应该使用screen而不是nohup。它达到了同样的结果-你的命令正在“分离”地运行。然而,你可以恢复屏幕会话,回到他们的“隐藏”终端,并看到该终端内部的最新进展。screen有很多选项,我最常用的是:要启动第一个屏幕会话或接管最近断开的会话:
screen
screen -Rd
要从当前会话分离:Ctrl+ACtrl+D组合键您也可以启动多个屏幕-阅读文档。
gcxthw6b3#
如果你有标准的输出重定向到“nohup.out”只是看看谁使用这个文件
lsof | grep nohup.out
9wbgstp74#
您无法确切地取得以nohup开头的命令清单,但您可以使用命令ps x来查看这些命令以及其他程序。以nohup开头的命令在TTY栏中会有一个问号。
ps x
9njqaruj5#
您也可以只使用top命令,您的用户ID将指示正在运行的作业及其时间。$ top -U [user ID](this将显示所有正在运行的作业)$ top -U [user ID]个(This将显示特定于该用户ID的作业)
$ top -U [user ID]
qco9c6ql6#
sudo lsof | grep nohup.out | awk '{print $2}' | sort -u | while read i; do ps -o args= $i; done
返回使用nohup.out文件的所有进程
6条答案
按热度按时间lrpiutwd1#
当我开始使用
$ nohup storm dev-zookeper
时,**方法1:**使用
jobs
,jobs
仅在启动nohup
的同一终端会话上显示nohup进程。如果关闭终端会话或尝试新会话,则不会显示nohup
进程。首选METHOD2***方法2:**使用
ps
命令。TTY色谱柱,运行程序
?
=〉nohup
。说明
参考资料
$ man ps
#然后搜索f8rj6qna2#
你应该使用
screen
而不是nohup
。它达到了同样的结果-你的命令正在“分离”地运行。然而,你可以恢复屏幕会话,回到他们的“隐藏”终端,并看到该终端内部的最新进展。screen
有很多选项,我最常用的是:要启动第一个屏幕会话或接管最近断开的会话:
要从当前会话分离:Ctrl+ACtrl+D组合键
您也可以启动多个屏幕-阅读文档。
gcxthw6b3#
如果你有标准的输出重定向到“nohup.out”只是看看谁使用这个文件
9wbgstp74#
您无法确切地取得以
nohup
开头的命令清单,但您可以使用命令ps x
来查看这些命令以及其他程序。以nohup
开头的命令在TTY栏中会有一个问号。9njqaruj5#
您也可以只使用top命令,您的用户ID将指示正在运行的作业及其时间。
$ top -U [user ID]
(this将显示所有正在运行的作业)
$ top -U [user ID]
个(This将显示特定于该用户ID的作业)
qco9c6ql6#
返回使用nohup.out文件的所有进程