Linux进程查看:妙用命令行

1. Linux中进程的基本概念

在Linux系统中,进程是指正在运行的程序的实例。每个进程都有一个唯一的进程ID(PID),以及其它相关信息,如内存使用情况、父进程ID等。

通过查看进程我们可以了解系统中正在运行的程序、其资源占用情况以及与其他进程之间的关系,这对于系统管理和故障排除非常重要。

2. 常用的进程查看命令

下面介绍一些常用的Linux进程查看命令,包括ps、top、htop等。

2.1 ps命令

ps命令用于查看当前正在运行的进程。其常用选项如下:

-e: 显示系统上所有的进程

-f: 显示更详细的进程信息,包括进程的父进程ID、运行时间等

-u: 显示进程的所有者

-l: 使用长格式显示进程信息

例如,我们可以使用以下命令查看正在运行的所有进程:

ps -ef

2.2 top命令

top命令也用于查看正在运行的进程,但与ps不同的是,top命令可以动态地显示进程的资源占用情况。

top命令的界面分为几个部分,包括系统概要、进程列表、内存使用情况、CPU使用情况等。通过按键可以对进程进行排序、筛选等操作。

例如,我们可以使用以下命令启动top:

top

2.3 htop命令

htop是top的一个改进版,提供了更多的功能和交互界面。

htop的界面与top类似,但更加美观,而且可以使用鼠标进行操作,比如可以通过鼠标点击或键盘操作来进行进程排序、筛选等操作。

例如,我们可以使用以下命令启动htop:

htop

3. 进程查看实例

下面通过一个实例来演示如何使用ps、top和htop命令来查看进程信息。

3.1 使用ps命令查看进程信息

我们可以使用ps命令来查看系统上所有正在运行的进程:

ps -ef

该命令将会列出所有进程的信息,包括进程ID、进程的所有者、CPU使用率、内存使用情况等。

下面是ps命令输出的一部分示例:

UID        PID  PPID  C STIME TTY          TIME CMD

root 1 0 0 10:45 ? 00:00:02 /sbin/init

root 2 0 0 10:45 ? 00:00:00 [kthreadd]

root 3 2 0 10:45 ? 00:00:00 [rcu_gp]

root 4 2 0 10:45 ? 00:00:00 [rcu_par_gp]

root 6 2 0 10:45 ? 00:00:00 [kworker/0:0H-kblockd]

root 9 2 0 10:45 ? 00:00:00 [mm_percpu_wq]

root 10 2 0 10:45 ? 00:00:07 [ksoftirqd/0]

root 11 2 0 10:45 ? 00:00:02 [rcu_sched]

root 12 2 0 10:45 ? 00:00:46 [migration/0]

root 13 2 0 10:45 ? 00:00:00 [idle_inject/0]

root 14 2 0 10:45 ? 00:00:00 [cpuhp/0]

root 15 2 0 10:45 ? 00:00:00 [cpuhp/1]

root 16 2 0 10:45 ? 00:00:00 [idle_inject/1]

root 17 2 0 10:45 ? 00:00:00 [migration/1]

root 18 2 0 10:45 ? 00:00:01 [ksoftirqd/1]

...

通过这个命令,我们可以获取到系统中所有进程的相关信息。

3.2 使用top命令查看进程信息

top命令可以实时地显示系统的进程信息。我们可以使用以下命令启动top:

top

top界面默认显示的是按CPU使用率排序的进程列表。以下是top命令界面的一部分示例:

PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND

3374 root 20 0 828768 155132 31388 S 2.0 1.2 0:19.35 Xorg

4703 user 20 0 1770200 818380 58648 S 1.3 6.4 18:37.69 gnome-shell

4739 user 20 0 2022212 483464 27848 S 1.3 3.8 5:52.83 chrome

...

通过该命令,我们可以实时监控系统中的进程,并查看各个进程的资源占用情况。

3.3 使用htop命令查看进程信息

htop命令是一个交互式的进程查看工具,可以使用以下命令启动:

htop

htop界面与top类似,但比top更加美观且功能更丰富。以下是htop的一部分界面示例:

1  [|||||                        8.0%]  Tasks: 107, 144 thr, 1 running

2 [|| 4.5%] Load average: 0.35 0.39 0.51

3 [||||||| 12.2%]Mem[|||||||||||||| 35.3%] GB

4 [||||| 8.0%]Swap[||||||||||| 0.0%] GB

5 [|||| ]Cpu[|||||||||||||||||||||||||||| 96.5%]

PID USER PRI NI VIRT RES SHR S[%CPU] %MEM TIME+ COMMAND

3399 root 20 0 679M 56344 4500 S 3.7 0.5 14:16.43 Xorg

7610 user 20 0 1417M 246M 38604 S 1.4 1.8 0:40.56 gnome-shell

4292 user 20 0 1884M 194M 32856 S 1.2 1.4 0:36.15 chrome

...

通过htop,我们可以使用鼠标点击或键盘操作来对进程进行排序、筛选等操作。

4. 总结

Linux中有多种命令可以用于查看进程信息,其中包括ps、top和htop命令。ps命令可以列出系统上所有的进程,并显示其详细信息;top命令可以实时地显示进程的资源占用情况;htop命令是top的一个改进版,提供了更多的功能和交互界面。

通过这些命令,我们可以方便地查看系统中正在运行的进程,了解其资源占用情况,以及与其他进程之间的关系,从而对系统进行管理和故障排除。

操作系统标签