2-控制进程


2016.6.21

进程的启动方式:

  • 手工启动

    • 前台启动:用户输入命令,直接执行程序
    • 后台启动:在命令行尾加入“&”符号
  • 调度启动

    • 使用at命令,设置一次性计划任务
    • 使用crontab命令,设置周期性计划任务
  • 示例

    • 后台运行:命令+&

进程的前后台调整:

  • Ctrl+Z组合键

    • 将当前进程挂起,即调入后台并停止执行
  • jobs命令

    • 查看处于后台任务列表
  • fg命令
    • 将后台进程恢复到前台运行,可指定任务序号

Ctrl + z

[root@test2 jason]# vim d

[1]+  Stopped                 vim d
[root@test2 jason]#

jobs

[root@test2 jason]# jobs
[1]+  Stopped                 vim d
[root@test2 jason]#

终止进程的运行:

  • Ctrl+C组合键

    • 中断正在执行的命令
  • kill、killall命令

    • kill用于终止指定PID号的进程
    • killall用于指定名称的所有进程
    • -9选项用于强制终止

kill

[root@test2 jason]# jobs -l
[1]+  7187 Stopped                 vim d
[2]   7397 Stopped (tty output)    vim e
[3]-  7401 Stopped                 vim f
[root@test2 jason]# kill 7397
[root@test2 jason]# jobs -l
[1]+  7187 Stopped                 vim d
[2]   7397 Stopped (tty output)    vim e
[3]-  7401 Stopped                 vim f
[root@test2 jason]#

kill -9

[root@test2 jason]# kill -9 7397
[root@test2 jason]# jobs -l
[1]+  7187 Stopped                 vim d
[2]   7397 Killed                  vim e
[3]-  7401 Stopped                 vim f
[root@test2 jason]#

killall之前

[root@test2 jason]# jobs -l
[1]+  7187 Stopped                 vim d
[2]   7397 Killed                  vim e
[3]-  7401 Stopped                 vim f

killall

[root@test2 jason]# killall vim
[root@test2 jason]# jobs -l
[1]+  7187 Stopped                 vim d
[3]-  7401 Stopped                 vim f

killall -9

[root@test2 jason]# killall -9 vim
[root@test2 jason]# jobs -l
[1]+  7187 Killed                  vim d
[3]-  7401 Killed                  vim f
[root@test2 jason]#
  • pkill命令

    • 用途:根据特定条件终止相应的进程
  • 常用命令选项

    • -U:根据进程所属的用户名终止相应进程
    • -t:根据进程所在终端终止相应进程

pkill-9

[root@test2 jason]# pgrep -l -U jason
5350 bash
5373 su
[root@test2 jason]# pkill -9 -U jason

Connection closed by foreign host.

Disconnected from remote host(Cent OS) at 14:59:20.

Type `help' to learn how to use Xshell prompt.

上面是在xshell中执行的,终止了jason的所有进程后,xshell断开

在虚拟机当中执行

[root@test2 Desktop]# pgrep -l -U jason
[root@test2 Desktop]#

results matching ""

    No results matching ""