ps
命令用来列出进程信息。
$ ps
PID TTY TIME CMD
5198 pts/1 00:00:00 bash
10129 pts/1 00:00:00 ps
不带任何参数时,ps
只列出与当前Session相关的进程。输出结果中,PID
是进程ID、TTY
是进程的终端号(如果显示?
,则表示进程没有终端),TIME
是消耗的CPU时间,CMD
是触发进程的命令。
x
参数列出所有进程的详细信息,包括不在当前Session的信息。
$ ps x
PID TTY STAT TIME COMMAND
2799 ? Ssl 0:00 /usr/libexec/bonobo-activation-server –ac
2820 ? Sl 0:01 /usr/libexec/evolution-data-server-1.10 --
这时的输出结果,会多出STAT
一栏,表示状态。它的各种值如下。
aux
参数可以显示更多信息。
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 2136 644 ? Ss Mar05 0:31 init
root 2 0.0 0.0 0 0 ? S< Mar05 0:00 [kt]
输出结果包含的列的含义如下。
USER
用户ID,表示进程的所有者%CPU
百分比表示的 CPU 使用率%MEM
百分比表示的内存使用率VSZ
虚拟内存大小RSS
进程占用的物理内存的大小,以千字节为单位。START
进程运行的起始时间。若超过24小时,则用天表示。top
命令可以查看机器的当前状态。
$ top
它的输出结果分为两部分,最上面是系统概要,下面是进程列表,以 CPU 的使用率排序。
输出结果是动态更新的,默认每三分钟更新一次。
jobs
命令用来查看后台任务。
$ jobs
[1]+ Running xlogo &
输出结果之中,每个后台任务会有一个编号。上面结果中,xlogo
的编号是1
,+
表示正在运行。
fg
命令用于将后台任务切换到前台。
$ fg %1
fg
命令之后,跟随着一个百分号和工作序号,用来指定切换哪一个后台任务。如果只有一个后台任务,那么fg
命令可以不带参数。
bg
命令用于将一个暂停的前台任务,转移到后台。只有暂停的任务,才能使用bg
命令,因为正在运行的任务,命令行是无法输入的。
$ bg %1
Ctrl + z
可以暂停正在运行的前台任务。
kill
命令用于杀死进程。它的参数是进程ID。
$ kill 28401
kill
命令的实质是操作系统向进程发送信号。在使用 Ctrl-c 的情况下,会发送一个叫做 INT(中断)的信号;当使用 Ctrl-z 时,则发送一个叫做 TSTP(终端停止)的信号。
kill
命令可以用来向进程发送指定信号。
$ kill [-signal] PID
下面是常见信号。
Ctrl-c
一样的功能,由终端发送。通常,它会终止一个程序。-l
参数可以列出所有信号。
$ kill -l
killall
命令用于向指定的程序或用户发送信号。
$ killall [-u user] [-signal] name
pstree
输出树型结构的进程列表,这个列表展示了进程间父/子关系。vmstat
输出一个系统资源使用快照,包括内存,交换分区和磁盘 I/O。 为了看到连续的显示结果,则在命令名后加上延时的时间(以秒为单位)。例如,“vmstat 5”。 终止输出,按下 Ctrl-c 组合键。xload
一个图形界面程序,可以画出系统负载的图形。tload
与xload
程序相似,但是在终端中画出图形。使用 Ctrl-c,来终止输出。