首页 > 代码库 > [CentOS 7系列]作业控制

[CentOS 7系列]作业控制

1、jobs

[root@server01 ~]# top
top - 06:39:07 up  8:24,  3 users,  load average: 0.01, 0.04, 0.05
Tasks:  87 total,   1 running,  84 sleeping,   2 stopped,   0 zombie
%Cpu(s):  0.5 us,  0.4 sy,  0.0 ni, 99.0 id,  0.1 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1008392 total,   157936 free,   132356 used,   718100 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   660208 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
30125 root      20   0  157572   2076   1504 R  6.2  0.2   0:00.01 top
    1 root      20   0   45528   5812   3672 S  0.0  0.6   0:02.34 systemd
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.01 kthreadd
    3 root      20   0       0      0      0 S  0.0  0.0   0:04.36 ksoftirqd/0
    4 root      20   0       0      0      0 D  0.0  0.0   0:38.92 kworker/0:0
    7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0
    8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh
    9 root      20   0       0      0      0 S  0.0  0.0   0:01.27 rcu_sched
   10 root      rt   0       0      0      0 S  0.0  0.0   0:02.68 watchdog/0
   12 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 khelper
   13 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kdevtmpfs
   14 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 netns
   15 root      20   0       0      0      0 S  0.0  0.0   0:00.01 khungtaskd
   16 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 writeback
   17 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kintegrityd
   18 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset
   19 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kblockd
[1]+  已停止               top                ## ctrl+z 暂停一个任务
[root@server01 ~]# cat /etc/passwd | wc -l &  ##管道符表示后面的命令作用于前面命令的结果
[2] 30138                                     ##“&”表示放在后台运行
[root@server01 ~]# 21
jobs                                          ## jobs命令用于查看后台的任务
[1]+  已停止               top
[2]-  完成                  cat /etc/passwd | wc -l


2、fg

[root@server01 ~]# jobs
[1]-  已停止               top
[2]+  已停止               man fdisk
[root@server01 ~]# fg 1                       ##将任务调度到前台运行
top - 06:58:25 up  8:43,  3 users,  load average: 0.00, 0.01, 0.05
Tasks: 102 total,   3 running,  82 sleeping,  17 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.2 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1008392 total,   153464 free,   136164 used,   718764 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   656136 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
    4 root      20   0       0      0      0 R  0.2  0.0   0:40.85 kworker/0:0
30083 root      20   0  143020   5556   4252 S  0.1  0.6   0:00.93 sshd
    9 root      20   0       0      0      0 S  0.0  0.0   0:01.34 rcu_sched
  287 root      20   0       0      0      0 S  0.0  0.0   0:08.18 xfsaild/sda3
  502 root      20   0  327432  26912   6556 S  0.0  2.7   0:04.39 firewalld
30087 root      20   0  115508   2168   1764 R  0.0  0.2   0:00.21 bash
    1 root      20   0   45528   5812   3672 S  0.0  0.6   0:02.35 systemd
   10 root      rt   0       0      0      0 S  0.0  0.0   0:02.71 watchdog/0
  801 root      20   0  553152  18520   5816 S  0.0  1.8   0:07.17 tuned
20876 root      20   0       0      0      0 S  0.0  0.0   0:00.41 kworker/u12+
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.01 kthreadd
    3 root      20   0       0      0      0 S  0.0  0.0   0:04.39 ksoftirqd/0
    7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0
    8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh
   12 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 khelper
   13 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kdevtmpfs
   14 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 netns
   ## ctrl+c  结束一个任务
[root@server01 ~]# jobs
[2]+  已停止               man fdisk


3、bg

[root@server01 ~]# jobs
[2]-  已停止               man fdisk
[3]+  已停止               ping -c 100 114.114.114.114
[root@server01 ~]# bg 3                       ##放在后台继续运行
[3]+ ping -c 100 114.114.114.114 &
[root@server01 ~]# 64 bytes from 114.114.114.114: icmp_seq=84 ttl=58 time=7.58 ms
64 bytes from 114.114.114.114: icmp_seq=85 ttl=58 time=10.2 ms
64 bytes from 114.114.114.114: icmp_seq=86 ttl=58 time=5.25 ms
job64 bytes from 114.114.114.114: icmp_seq=87 ttl=58 time=11.5 ms
s
[2]+  已停止               man fdisk
[3]-  运行中               ping -c 100 114.114.114.114 &

如果正在运行一个进程,而且希望在退出帐户时该进程还不会结束,那么可以使用nohup命令(nohup command &)。该命令可以在用户退出帐户之后继续运行相应的进程。


本文出自 “乱码时代” 博客,请务必保留此出处http://juispan.blog.51cto.com/943137/1943301

[CentOS 7系列]作业控制