如何使用命令行检查Ubuntu中的运行进程

时间:2020-01-09 10:38:59  来源:igfitidea点击:

如何使用命令行选项检查Ubuntu中的运行进程?
可以使用Ubuntu命令行或终端应用程序显示正在运行的进程,更改其优先级,删除进程等等。
该页面显示了如何在Ubuntu上使用各种命令来列出,终止和管理进程。

检查Ubuntu中的运行过程

使用命令行监视Ubuntu中正在运行的进程的过程如下:

  • 在Ubuntu上打开终端窗口
  • 对于远程Ubuntu服务器,请使用ssh命令进行登录
  • 执行ps aux命令以查看Ubuntu中所有正在运行的进程
  • 或者,您可以发出top命令来查看Ubuntu中的运行进程。

如何从Ubuntu终端管理进程

ps命令是传统的Ubuntu Linux命令,用于列出正在运行的进程。

以下命令显示了在基于Ubuntu的系统上运行的所有进程:

[Hyman@ubuntuLTS:~]$ ps -aux
[Hyman@ubuntuLTS:~]$ sudo ps -a

进程ID(PID)对于在Ubuntu上终止或控制进程至关重要。例如,考虑以下输出:

esha 42421  0.0  0.0 13160 8452  -  S    22:18   0:00.03 firefox
  • esha用户名
  • 42421PID(Ubuntu Linux进程ID)
  • 22:18处理开始时间
  • firefox实际过程或命令

可能有太多的过程。
因此,可以使用以下less/more命令作为管道来一次显示一个屏幕的进程:

[Hyman@ubuntuLTS:~]$ ps -aux | more
[Hyman@ubuntuLTS:~]$ sudo ps -aux | less

按" q"退出Ubuntu Linux传呼机。
您可以使用grep命令/egrep命令搜索特定的Ubuntu进程:

[Hyman@ubuntuLTS:~]$ ps aux | grep nginx
[Hyman@ubuntuLTS:~]$ sudo ps aux | grep vim
[Hyman@ubuntuLTS:~]$ sudo ps -aux | egrep 'sshd|openvpn'

pgrep命令

Ubuntu带有pgrep命令来搜索/查找进程。
语法为:

[Hyman@ubuntuLTS:~]$ pgrep process
[Hyman@ubuntuLTS:~]$ sudo pgrep sshd
[Hyman@ubuntuLTS:~]$ pgrep vim
[Hyman@ubuntuLTS:~]$ pgrep -l test.sh

传递给pgrep命令的-l选项也可以显示长格式和进程名。

top

强烈建议使用" top"命令查看您的Ubuntu服务器资源使用情况。
可以看到使用最多的内存,CPU或磁盘的最重要进程的列表。
运行:

[Hyman@ubuntuLTS:~]$ top
[Hyman@ubuntuLTS:~]$ sudo top
[Hyman@ubuntuLTS:~]$ sudo top [options]

Ubuntu Kill命令

如果要杀死Ubuntu上的进程吗?
试试kill命令。
语法为:

[Hyman@ubuntuLTS:~]$ kill pid
[Hyman@ubuntuLTS:~]$ kill -signal pid

使用ps,pgrep或top命令查找PID。
假设您想杀死PID 25123,请运行:

[Hyman@ubuntuLTS:~]$ kill 25123

由于某种原因,如果无法终止该进程,请尝试强制终止:

[Hyman@ubuntuLTS:~]$ kill -9 25123

或者

[Hyman@ubuntuLTS:~]$ kill -KILL 25123

pkill命令

如果您想按名称杀死进程,请在Ubuntu上尝试使用pkill命令。
语法为:

[Hyman@ubuntuLTS:~]$ pkill processName
[Hyman@ubuntuLTS:~]$ pkill vim
[Hyman@ubuntuLTS:~]$ pkill firefox
[Hyman@ubuntuLTS:~]$ pkill -9 emacs
[Hyman@ubuntuLTS:~]$ sudo pkill -KILL php7-fpm

killall命令

" killall"命令按名称杀死进程,而不是像kill命令那样按PID选择进程:

[Hyman@ubuntuLTS:~]$ killall vim
[Hyman@ubuntuLTS:~]$ killall -9 emacs

nice命令

" nice"命令的主要目的是以较低或较高的优先级运行进程/命令。
使用" renice"命令更改一个或多个正在运行的Ubuntu进程的值。

nice值的范围可以从-20到19,其中19是最低优先级。
假设您要在繁忙的Ubuntu Linux 18.04 LTS服务器上编译软件。
您可以设置一个非常低的优先级,执行:

[Hyman@ubuntuLTS:~]$ nice -n 13 cc -c *.c &

为内核更新设置很高的优先级。
在重启Ubuntu服务器之前,运行:

[Hyman@ubuntuLTS:~]$  nice --10 wall <<end
System reboots in 5 minutes for Ubuntu Linux kernel update! 
Save all your work!!!
 
-- Sysadmin
end

要更改正在运行的进程的优先级,请执行以下内容:

[Hyman@ubuntuLTS:~]$ renice {Priority} -p {PID}
[Hyman@ubuntuLTS:~]$ renice {Priority} {PID}
[Hyman@ubuntuLTS:~]$ pgrep vim
[Hyman@ubuntuLTS:~]$ renice 10 69947
[Hyman@ubuntuLTS:~]$ sudo renice -10 $(pgrep vim)