显示当前用户正在运行的进程的命令是什么?我只想查看从命令行或通过桌面启动的内容,而不希望看到所有桌面内容和系统服务以及在后台运行的内容。
有这样的事吗?
或者我需要在输入时查看所有正在运行的进程htop
?
答案1
用户可以轻松过滤进程。在 htop 中,按u
并选择用户名,或运行htop -u $(id -un)
。您还可以通过勾选“设置→显示选项→隐藏其他用户的进程”来使其他用户的进程可见但呈灰色。
“桌面东西”是在您的用户下运行的进程。不存在“属于桌面内容的进程”与“属于独立应用程序的进程”的概念。就操作系统而言,构成“桌面内容”的部分是与其他任何部分一样的应用程序。 “桌面东西”与“其他东西”的定义纯粹是任意的。通过单击图标手动启动的程序与会话开始时自动启动的小部件没有区别。
如果您从终端运行程序,则可以ps
在终端中运行命令。默认情况下,它仅列出从该终端启动的程序。
虽然您可以列出从任何终端启动的所有程序,但这没有意义,因为它不包括从桌面菜单或图标启动的程序。
如果您只对不属于桌面的 GUI 程序感兴趣,那么列出窗口会更有意义。尝试wmctrl -lp
。
答案2
如果您想查看属于$USER
中用户的所有进程top
,请按u
并输入用户名,或top
以
$ top -U $USER
要在命令行上获取简单的进程列表:
$ pgrep -l -U $USER
类似的列表ps
:
$ ps -U $USER
根据手册htop
,这将开始htop
仅显示属于 user 的进程$USER
:
$ htop -u $USER
请注意,该变量USER
通常包含您自己的用户名。我在这里用它作为例子。
答案3
尝试使用
ps aux | grep ubuntu
替换ubuntu
为您的桌面用户名。您的系统用户可能是root
,syslog
等等
如果您不确定您的用户名,请考虑终端问题:~$ whoami
你应该看到类似的东西
ubuntu@ip-172-31-46-27:~$ whoami
ubuntu