如何使用命令行检查Unix中的运行进程
时间:2020-01-09 10:38:59 来源:igfitidea点击:
如何使用命令行选项检查Unix中的运行进程?
可以使用Unix命令行或终端应用程序显示正在运行的进程,更改其优先级,删除进程等等。
该页面显示了如何使用各种命令来列出,终止和管理Unix上的进程。
如何从Unix终端上管理进程
ps命令是传统的Unix命令,用于列出正在运行的进程。
以下命令显示了系统上运行的所有进程:
ps -aux sudo ps -a
进程ID(PID)对于在Unix上终止或控制进程至关重要。例如,考虑以下输出:
Hyman 43126 0.0 0.0 13160 8452 - S 10:59 0:00.03 vim
- Hyman用户名
43126
PID(Unix进程ID)10:59
处理开始时间- vim实际过程或命令
可能有太多的过程。
这时,可以使用以下less/more命令作为管道来一次显示一个屏幕的进程:
ps -aux | more sudo ps -aux | less
按" q"退出Unix less屏幕。
您可以使用grep命令/egrep命令搜索特定的Unix进程:
ps aux | grep nginx sudo ps aux | grep vim sudo ps -aux | egrep 'sshd|openvpn'
pgrep命令
Unix的许多变体都带有" pgrep"命令来搜索/查找进程。
语法为:
pgrep process sudo pgrep sshd pgrep vim pgrep -l nginx
传递给pgrep命令的-l选项也可以显示长格式和进程名。
top
强烈建议使用" top"命令来查看Unix服务器的资源使用情况。
可以看到使用最多的内存,CPU或磁盘的最重要进程的列表。
top sudo top sudo top [options]
Unix kill命令
想杀死一个进程吗?
试试kill
命令。
语法为:
kill pid kill -signal pid
使用ps,pgrep或top命令查找PID。
假设您想杀死PID 50797,请运行:
kill 50797
由于某种原因,如果无法终止该进程,请尝试强制终止:
kill -9 50797
或者
kill -KILL 50797
pkill命令
如果要按名称终止进程,请尝试使用pkill命令。
语法为:
pkill processName pkill vim pkill firefox pkill -9 emacs sudo pkill -KILL php7-fpm
killall命令
" killall"命令按名称杀死进程,而不是像kill命令那样按PID选择进程:
killall vim killall -9 emacs
好又仁慈的命令
" nice"命令的主要目的是以较低或较高的优先级运行进程/命令。
使用" renice"命令更改一个或多个正在运行的Unix进程的值。
nice值的范围可以从-20到19,其中19是最低优先级。
假设您要在繁忙的Unix服务器上编译软件。
您可以设置一个非常低的优先级,执行:
nice -n 13 cc -c *.c &
为内核更新设置很高的优先级。
在重新引导Unix服务器之前,运行:
nice --10 wall <<end System reboots in 5 minutes for Unix kernel update! Save all your work!!! -- Sysadmin end
要更改正在运行的进程的优先级,请执行以下内容:
renice {Priority} -p {PID} renice {Priority} {PID} pgrep vim renice 10 69947 sudo renice -10 $(pgrep vim)