首页 百科知识 进程及通信命令

进程及通信命令

时间:2022-10-09 百科知识 版权反馈
【摘要】:kill命令的功能是向指定进程发送信号,在默认处理方式下,系统将终止指定进程。该命令的常用语法格式如下所示:write命令的功能是将消息直接发送到另一个用户的终端上,以实现用户之间的通信。通常情况下,write命令首先进行与接收方的连接。但在使用write命令时,有时会出现不能进行通信的情形,如发送方事先用mesg命令禁止了自己终端的消息通道,或接收方当前没有登录到系统上。

8.3.2 进程及通信命令

who和w命令只能查看当前系统用户的情况,而要查询系统中进程的情况,则要使用p s命令。

(1)ps

ps命令的功能是查询系统中当前活动进程的相关信息,该命令的语法格式如下:

ps [选项]

ps命令的常用选项有:

-e:显示所有进程的信息。

-l:以长格式列出进程信息。

-h:不显示标题。

-a:显示所有有终端的进程。

例如,为查看当前进程状况,可直接使用ps命令:

$ps

PID  TTY  TIME  CMD

1309   tty1  0:01  bash

1354   ttyl  0:00   ps

从上述命令的运行结果中可以看到,显示的内容共分为4列,依次为PID(进程标识号)、TTY(关联终端名称)、TIME(进程执行时间)和CMD(该进程的命令行)。

(2)kill

kill命令的功能是向指定进程发送信号,在默认处理方式下,系统将终止指定进程。该命令的常用语法格式如下所示:

kill [选项] 进程标识号

kill命令的常用选项有:

-s 信号:指定需要发送给进程的信号。若没有使用该选项指定要发送的信号,则默认发送SIGTERM。

-l:显示信号名称列表。

例如,要终止进程1409,可以使用下述命令:

$kill 1409

这时发送缺省信号SIGTERM 到进程1409来终止它的运行。

(3)write

write命令的功能是将消息直接发送到另一个用户的终端上,以实现用户之间的通信。write命令的一般格式为:

write 用户名 [终端名]

其中用户名指定接收消息的用户。如果要进行通信的用户在许多终端上都进行了登录,则发送方可以通过终端名来指定要将消息发送到终端。如果接收方在许多终端上都进行了登录,而使用write命令时没有指定终端名,则write命令会自动选择当前空闲时间最少的终端进行通信。

通常情况下,write命令首先进行与接收方的连接。一旦write命令与接收方建立了连接,发送方在终端输入的信息都将在接收方的终端上显示出来,并且这种连接会一直保持下去,直到发送方键入“Crtl+D”为止。但在使用write命令时,有时会出现不能进行通信的情形,如发送方事先用mesg命令禁止了自己终端的消息通道,或接收方当前没有登录到系统上。

例如,用户wang使用write命令与用户zheng通信,可执行以下命令:

$write zheng

此时系统进入发送信息状态,用户可以输入要发送的信息,输入完毕希望退出发送状态时,按“Ctrl+D”即可,如下所示:

Hello:

We have a meeting at Room 412.

Ctrl+D

上述命令执行的结果是用户zheng的屏幕上会显示如下信息:

Message from wang tty3 09:16

Hello:

We have a meeting at Room 412.

(4)mesg

write等通信命令使用户之间相互交流变得极其简单,但系统间的通信也会干扰正常的工作。例如,如果用户正在编辑一篇文章时收到其他用户发布的信息,屏幕就会被这些信息所扰乱,使得编辑工作无法正常进行。想要免除此类不必要的干扰,可以使用mesg命令设定禁止接收他人发布的信息。

mesg命令用来控制其他用户对终端的访问权限,通过它可以设定是否允许其他用户给自己发送信息。对于超级用户,mesg的默认值为禁止;而对于一般用户,系统的默认值为允许。该命令的格式如下:

mesg [选项]

其选项有如下两个:

y:允许其他用户发送信息,是默认值。

n:不允许其他用户发送信息。

如果命令后面没有选项,就显示用户当前的状态是允许还是不允许。

例如,若允许别人给自己发送信息,可输入命令:

$mesg y

(5)wall

如果要向当前登录到系统的所有用户发送信息,可以使用wall命令。wall命令通常由系统管理员使用。例如在系统关闭前,管理员应该向所有登录到系统的用户发出通知,提醒他们在系统关闭前保存有关的数据,此时管理员可以使用wall命令来发布该通知。w all命令的格式为:

wall [消息]其中参数“消息”指定所要发送的信息。如果不指定参数“消息”,则表示从标准输入中读取要发布的信息,此时要通过按“Ctrl+D”来结束消息的输入。

例如,要向所有登录的用户发送消息“Hello,How are you!”,可输入以下命令:

$wall

Hello, How are you!

Ctrl+D

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈