Chinaunix首页 | 论坛 | 博客
  • 博客访问: 852815
  • 博文数量: 275
  • 博客积分: 3904
  • 博客等级: 中校
  • 技术积分: 4605
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-17 21:10
文章分类

全部博文(275)

文章存档

2014年(9)

2013年(124)

2012年(142)

分类: 系统运维

2013-05-23 10:31:10

[root@linux ~]# kill -signal %jobnumber
[root@linux ~]# kill -l
参数:
-l  :这个是 L 的小写,列出目前 kill 能够使用的讯号 (signal) 有哪些?共有62个信号。
signal :代表给予后面接的那个工作什么样的指示啰!用 man 7 signal 可知:
-1 :重新读取一次参数的设定档 (类似 reload);
-2 :代表与由键盘输入 [ctrl]-c 同样的动作;
-9 :立刻强制删除一个工作;
-15:以正常的程序方式终止一项工作。与 -9 是不一样的。
范例:

范例一:找出目前的 bash 环境下的背景工作,并将该工作删除。
[root@linux ~]# jobs
[1]+  Stopped                 vim bashrc
[root@linux ~]# kill -9 %1
[1]+  已砍掉                  vim bashrc

范例:找出目前的 bash 环境下的背景工作,并将该工作终止掉。
[root@linux ~]# jobs
[1]+  Stopped                 vim bashrc
[root@linux ~]# kill -SIGTERM %1
[1]+  终止                    vim bashrc
# -SIGTERM 与 -15 是一样的!您可以使用 kill -l 来查阅!

特 别留意一下, -9 这个 signal 通常是用在‘强制删除一个不正常的工作’时所使用的, -15 则是以正常步骤结束一项工作(15也是预设值),两者之间并不相同呦!举上面的例子来说, 我用 vi 的时候,不是会产生一个 .filename.swp 的档案吗? 那么,当使用 -15 这个 signal 时, vi 会尝试以正常的步骤来结束掉该 vi 的工作, 所以 .filename.swp 会主动的被移除,但若是使用 -9 这个 signal 时, 由于该 vi 工作会被强制移除掉,因此, .filename.swp 就会继续存在档案系统当中。 这样您应该可以稍微分辨一下了吧?

其实, kill 的妙用是很无穷的啦!他搭配 signal 所详列的资讯 (用 man 7 signal 去查阅相关资料) 可以让您有效的管理工作与程序 (Process),此外,那个 killall 也是同样的用法! 至于常用的 signal 您至少需要瞭解 1, 9, 15 这三个 signal 的意义才好。 此外, signal 除了以数值来表示之外,也可以使用讯号名称喔! 举例来说,上面的范例二就是一个例子啦!至于 signal number 与名称的对应, 呵呵,使用 kill -l 就知道啦(L的小写)!
SIGNALS
The  signals  listed  below  may  be  available  for use with kill.  When known constant, numbers and
default behavior are shown.

Name     Num   Action    Description
0          0   n/a       exit code indicates if a signal may be sent
ALRM      14   exit
HUP        1   exit
INT        2   exit
KILL       9   exit      cannot be blocked
PIPE      13   exit
POLL           exit
PROF           exit
TERM      15   exit
USR1           exit
USR2           exit
VTALRM         exit
STKFLT         exit      might not be implemented
PWR            ignore    might exit on some systems
WINCH          ignore
CHLD           ignore
URG            ignore
TSTP           stop      might interact with the shell
TTIN           stop      might interact with the shell
TTOU           stop      might interact with the shell
STOP           stop      cannot be blocked
CONT           restart   continue if stopped, otherwise ignore
ABRT       6   core
FPE        8   core
ILL        4   core
QUIT       3   core
SEGV      11   core
TRAP       5   core
SYS            core      might not be implemented
EMT            core      might not be implemented
BUS            core      core dump might fail
XCPU           core      core dump might fail
XFSZ           core      core dump might fail
阅读(936) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~