Linux基础进程和计划任务管理

本文详细介绍了Linux系统中进程的查看与管理,包括使用ps、top命令查看进程信息,进程的启动方式,以及如何通过前台、后台调度进程。此外,还讲解了计划任务管理,如at命令用于一次性任务,crontab命令用于周期性任务的设置和管理。
摘要由CSDN通过智能技术生成

程序和进程的关系

程序
保存在硬盘,光盘等介质中可执行代码和数据
文件中静态保存的代码
进程
在cpu及内存中运行的程序代码
动态执行的代码
父,子进程
每个程序可以创建一个或多个进程

查看进程信息ps

ps命令
查看静态的进程统计信息

方法一:ps -aux

[root@localhost ~]# ps aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  2.8  0.1 193948  7132 ?        Ss   15:10   0:01 /usr/lib/systemd/systemd --switched-root --
root          2  0.0  0.0      0     0 ?        S    15:10   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        S    15:10   0:00 [kworker/0:0]
root          4  0.0  0.0      0     0 ?        S<   15:10   0:00 [kworker/0:0H]
root          5  0.0  0.0      0     0 ?        S    15:10   0:00 [kworker/u256:0]
root          6  0.0  0.0      0     0 ?        S    15:10   0:00 [ksoftirqd/0]
root          7  0.2  0.0      0     0 ?        S    15:10   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    15:10   0:00 [rcu_bh]
root          9  0.4  0.0      0     0 ?        S    15:10   0:00 [rcu_sched]
root         10  0.0  0.0      0     0 ?        S<   15:10   0:00 [lru-add-drain]
root         11  0.0  0.0      0     0 ?        S    15:10   0:00 [watchdog/0]
root         12  0.0  0.0      0     0 ?        S    15:10   0:00 [watchdog/1]
root         13  0.1  0.0      0     0 ?        S    15:10   0:00 [migration/1]
root         14  0.0  0.0      0     0 ?        S    15:10   0:00 [ksoftirqd/1]
root         15  0.0  0.0      0     0 ?        S    15:10   0:00 [kworker/1:0]
root         16  0.0  0.0      0     0 ?        S<   15:10   0:00 [kworker/1:0H]
root         17  0.0  0.0      0     0 ?        S    15:10   0:00 [watchdog/2]
root         18  0.1  0.0      0     0 ?        S    15:10   0:00 [migration/2]
root         19  0.0  0.0      0     0 ?        S    15:10   0:00 [ksoftirqd/2]
root         20  0.0  0.0      0     0 ?        S    15:10   0:00 [kworker/2:0]

a:显示终端上的所有进程,包括其它用户的进程
u:表示列出进程的用户
x:显示所有终端的进程
各列的解释:
USER:进程的用户。
PID: 进程的ID。
%CPU:进程占用的CPU百分比。
%MEM:占用内存的百分比。
vsz:该进程使用的虚拟内存量 (KB)
RSS:该进程占用的物理内存量 (KB)
TTY:启动进程的终端名。不是从终端启动的进程则显示为 ?

STAT:该进程的状态(:不可中斯的休眠状态:: 正在运行状态:5: 处于休状态,可被唤醒::停止状态,可能是在后台暂停或进程处于跟踪调试状态:2: 僵尸进程,进程己经中止,但是部分程序还在内存当中)
TIME: 该进程实际使用CPU运行的时间。
COMMAND:进程的启动命令。
方法二:ps -elf

[root@localhost ~]# ps -elf
F S UID         PID   PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root          1      0  3  80   0 - 48487 ep_pol 15:10 ?        00:00:01 /usr/lib/systemd/systemd --switc
1 S root          2      0  0  80   0 -     0 kthrea 15:10 ?        00:00:00 [kthreadd]
1 S root          3      2  0  80   0 -     0 worker 15:10 ?        00:00:00 [kworker/0:0]
1 S root          4      2  0  60 -20 -     0 worker 15:10 ?        00:00:00 [kworker/0:0H]
1 S root          5      2  0  80   0 -     0 worker 15:10 ?        00:00:00 [kworker/u256:0]
1 S root          6      2  0  80   0 -     0 smpboo 15:10 ?        00:00:00 [ksoftirqd/0]
1 S root          7      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [migration/0]
1 S root          8      2  0  80   0 -     0 rcu_gp 15:10 ?        00:00:00 [rcu_bh]
1 S root          9      2  0  80   0 -     0 rcu_gp 15:10 ?        00:00:00 [rcu_sched]
1 S root         10      2  0  60 -20 -     0 rescue 15:10 ?        00:00:00 [lru-add-drain]
5 S root         11      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [watchdog/0]
5 S root         12      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [watchdog/1]
1 S root         13      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [migration/1]
1 S root         14      2  0  80   0 -     0 smpboo 15:10 ?        00:00:00 [ksoftirqd/1]
1 S root         15      2  0  80   0 -     0 worker 15:10 ?        00:00:00 [kworker/1:0]
1 S root         16      2  0  60 -20 -     0 worker 15:10 ?        00:00:00 [kworker/1:0H]
5 S root         17      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [watchdog/2]
1 S root         18      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [migration/2]
1 S root         19      2  0  80   0 -     0 smpboo 15:10 ?        00:00:00 [ksoftirqd/2]
1 S root         20      2  0  80   0 -     0 worker 15:10 ?        00:00:00 [kworker/2:0]
1 S root         21      2  0  60 -20 -     0 worker 15:10 ?        00:00:00 [kworker/2:0H]
5 S root         22      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [watchdog/3]
1 S root         23      2  0 -40   - -     0 smpboo 15:10 ?        00:00:00 [migration/3]
1 S root         24      2  0  80   0 -     0 smpboo 15:10 ?        00:00:00 [ksoftirqd/3]
1 S root         25      2  0  80   0 -     0 worker 15:10 ?        00:00:00 [kworker/3:0]
1 S root         26      2  0  60 -20 -     0 worker 15:10 ?        00:00:00 [kworker/3:0H]

-e:显示系统内的所有进程信息。
-l:使用长格式显示进程信息。
-f:使用完整的格式显示进程信息。

各列的解释:
F:内核分配给进程的系统标记。
S:进程的状态
UID:启动这些进程的用户。
PID:进程的进程ID
PPID:父进程的进程号(如果该进程是由另一个进程启动的)
C:进程生命周期中的CPU利用率。
PRI:进程的优先级(越大的数字代表越低的优先级)。
NI: 谦让度值用来参与决定优先级。
ADDR:进程的内存地址
SZ: 假如进程被换出,所需交换空间的大致大小。WCHAN: 若该进程在睡眠,则显示睡眠中的系统函数名
STIME:进程启时的系统时间。
TTY:启动进程的终端名,不是从终端启动则为0.
TIME:使用cpu运行时间
CMD:进程启动命令

查看动态进程信息top

每5秒刷新一次
w , uptime=top

[root@localhost ~]# top
top - 15:29:08 up 18 min,  2 users,  load average: 0.00, 0.02, 0.06
Tasks: 238 total,   1 running, 237 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  4026152 total,  1591884 free,   838548 used,  1595720 buff/cache
KiB Swap:     8188 total,     8188 free,        0 used.  2931640 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
   458 root      20   0       0      0      0 S   0.3  0.0   0:00.76 xfsaild/dm-0
   878 root      20   0  295564   5284   4040 S   0.3  0.1   0:01.52 vmtoolsd
  2494 root      20   0  608676  25468  18804 S   0.3  0.6   0:01.67 vmtoolsd
  3163 root      20   0       0      0      0 S   0.3  0.0   0:00.02 kworker/0:1
     1 root      20   0  193948   7132   4196 S   0.0  0.2   0:01.99 systemd
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd
     4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H
     6 root      20   0       0      0      0 S   0.0  0.0   0:00.04 ksoftirqd/0
     7 root      rt   0       0      0      0 S   0.0  0.0   0:00.20 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:00.49 rcu_sched
    10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-drain
    11 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 watchdog/0
    12 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 watchdog/1
    13 root      rt   0       0      0      0 S   0.0  0.0   0:00.10 migration/1
    14 root      20   0       0      0      0 S   0.0  0.0   0:00.04 ksoftirqd/1
    16 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/1:0H
    17 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 watchdog/2
    18 root      rt   0       0      0      0 S   0.0  0.0   0:00.12 migration/2
    19 root      20   0       0      0      0 S   0.0  0.0   0:00.08 ksoftirqd/2
    21 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/2:0H
    22 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 watchdog/3
    23 root      rt   0       0      0      0 S   0.0  0.0   0:00.13 migration/3
    24 root      20   0       0      0      0 S   0.0  0.0   0:00.05 ksoftirqd/3
    25 root      20   0       0      0      0 S   0.0  0.0   0:00.09 kworker/3:0
    26 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/3:0H
    28 root      20   0       0      0      0 S   0.0  0.0   0:00.01 kdevtmpfs
    29 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 netns
    30 root      20   0       0      0      0 S   0.0  0.0   0:00.00 khungtaskd
    31 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 writeback
    32 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kintegrityd
    33 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 bioset

第一行是任务队列信息
15:29:08 系统时间
up 18 系统已运行时常
2 user 当前登录用户数
load average: 0.00, 0.02, 0.06 系统负载,即单位时间内系统处理的任务数,后面三个数值分别为1分钟,5分钟,15分钟前到现在的平均值
第二行为进程信息
Tasks 总进程数
running 正在运行的进程数
sleeping 休眠的进程数
stopped 中止的进程数
zombie 僵死的进程数
第三行为cpu信息
us 用户占用
sy 内核占用
ni 优先级调度占用
id 空闲cpu,要了解空闲的cpu百分比,主要看%id部分
wa I/O等待占用
hi 硬件中断占用
si 软件中断占用
st 虚拟化占用
第四行为内存信息
total 总内存空间
free 空闲内存
used 已用内存
buff/cache 物理内存和交换内存的缓冲区总和
第五行为交换空间的信息
total 总交换空间
free 空闲交换空间
used 已用交换空间
avail Mem 可用物理空间
进程信息区各列解释:
进程id PID
进程所有者的用户名 USER
PR 优先级
NI 谦让度值。负值表示高优先级,正值表示低优先级
VIRT 进程使用的虚拟内存总量,单位kb
RES 进程使用的物理内存大小,单位kb
SHR 共享内存大小,单位kb
s 进程状态
%CPU 上次更新到现在的CPU时间占用百分比
%MEM 进程使用的物理内存百分比
TIME+ 进程使用的CPU时间总计,单位1/100秒
COMMAND 命令名/命令行
top常用命令
P键:根据CPU使用百分比大小进行排序
M键:根据驻留内存大小进行排序
N键::根据启动时间进行排序
c键:切换显示命令名称和完整命令行
h键:可以获得 top程序的在线帮助信息
l键:显示CPU个数
k键:根据提示输入指定进程的 PID 号并按 Eter 键终止对应的进程
q键:退出 top 程序

ps aux --sort -%cpu | head -10按cpu降序排列,-为降序,+为升序,p与%同义

[root@localhost ~]# ps aux --sort -%cpu | head -10
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root       2229  0.2  4.6 3426256 188756 ?      Sl   15:11   0:04 /usr/bin/gnome-shell
root        878  0.1  0.1 295564  5288 ?        Ssl  15:10   0:03 /usr/bin/vmtoolsd
root       2494  0.1  0.6 608676 25468 ?        Sl   15:11   0:03 /usr/bin/vmtoolsd -n vmusr
root          1  0.0  0.1 193948  7132 ?        Ss   15:10   0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2  0.0  0.0      0     0 ?        S    15:10   0:00 [kthreadd]
root          4  0.0  0.0      0     0 ?        S<   15:10   0:00 [kworker/0:0H]
root          6  0.0  0.0      0     0 ?        S    15:10   0:00 [ksoftirqd/0]
root          7  0.0  0.0      0     0 ?        S    15:10   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    15:10   0:00 [rcu_bh]

按内存升序排列

[root@localhost ~]# ps aux --sort +pmem | head -n10
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          2  0.0  0.0      0     0 ?        S    15:10   0:00 [kthreadd]
root          4  0.0  0.0      0     0 ?        S<   15:10   0:00 [kworker/0:0H]
root          6  0.0  0.0      0     0 ?        S    15:10   0:00 [ksoftirqd/0]
root          7  0.0  0.0      0     0 ?        S    15:10   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    15:10   0:00 [rcu_bh]
root          9  0.0  0.0      0     0 ?        S    15:10   0:00 [rcu_sched]
root         10  0.0  0.0      0     0 ?        S<   15:10   0:00 [lru-add-drain]
root         11  0.0  0.0      0     0 ?        S    15:10   0:00 [watchdog/0]
root         12  0.0  0.0      0     0 ?        S    15:10   0:00 [watchdog/1]
[root@localhost ~]#

ps -aT 显示所有线程 =top -H

[root@localhost ~]# ps -aT
   PID   SPID TTY          TIME CMD
  3620   3620 pts/0    00:00:00 ps

ps -T -p pid号 查看指定进程中的线程=top -H -p pid号
ps -L pid号 查看指定进程中进程信息线程

prep 查看进程信息

根据特定条件查询进程PID信息

在这里插入图片描述
在这里插入图片描述

pstree查看进程树

以树形结构列出进程树
在这里插入图片描述
在这里插入图片描述

进程启动方式

手工启动
前台启动:用户输入命令,直接执行程序
后台启动: 在命令行尾别入“&”符号

root@localhost ~]# cp /dev/cdrom mycd.iso
cp:是否覆盖"mycd.iso"? y



^C
[root@localhost ~]# cp /dev/cdrom mycd.iso&
[1] 4684

调度启动
使用at命令,设置一次性计划任务
使用crontab命令,设置周期性计划任务

进程的前后台调度

Ctrl+Z组合键
将当前进程挂起,即调入后台并停止执行

[root@localhost ~]# vim /abc.txt

[2]+  已停止               vim /abc.txt
[root@localhost ~]#

jobs命令
jobs -l 查看处于后台的任务列表

[root@localhost ~]# jobs -l
[1]-  4684 停止 (tty 输入)     cp -i /dev/cdrom mycd.iso
[2]+  5059 停止                  vim /abc.txt

fg命令
将后台进程恢复到前台运行,可指定任务序号

[root@localhost ~]# jobs
[1]-  已停止               cp -i /dev/cdrom mycd.iso
[2]+  已停止               vim /abc.txt
[root@localhost ~]# fg1
bash: fg1: 未找到命令...
[root@localhost ~]# fg 1
cp -i /dev/cdrom mycd.iso

终止进程运行1

ctrl+c组合键
中断正在执行的命令
kill、killall命令
kill用于终止指定PID号的进程
killall用于终止指定名称相关的所有进程
-9选项用于强制终止

[root@localhost ~]# kill -l
 1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
 6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1  64) SIGRTMAX
[root@localhost ~]#

通过发送信号方式
kill -s SIGKILL pid号=kill -9 pid号 杀掉一个进程

├─systemd-udevd(582)
           ├─tracker-store(2558)─┬─{tracker-store}(2564)
           │                     ├─{tracker-store}(2565)
           │                     ├─{tracker-store}(2567)
           │                     ├─{tracker-store}(2572)
           │                     ├─{tracker-store}(2576)
           │                     ├─{tracker-store}(2577)
           │                     └─{tracker-store}(2578)
           ├─tuned(1339)─┬─{tuned}(1658)
           │             ├─{tuned}(1660)
           │             ├─{tuned}(1667)
           │             └─{tuned}(1675)
           ├─udisksd(840)─┬─{udisksd}(856)
           │              ├─{udisksd}(871)
           │              ├─{udisksd}(935)
           │              └─{udisksd}(1023)
           ├─upowerd(1799)─┬─{upowerd}(1800)
           │               └─{upowerd}(1801)
           ├─vmtoolsd(878)─┬─{vmtoolsd}(931)
           │               └─{vmtoolsd}(945)
           ├─vmtoolsd(2494)─┬─{vmtoolsd}(2529)
           │                ├─{vmtoolsd}(2534)
           │                └─{vmtoolsd}(2636)
           ├─wpa_supplicant(1875)
           └─xdg-permission-(2273)─┬─{xdg-permission-}(2274)
                                   └─{xdg-permission-}(2276)

[root@localhost ~]# kill 2578

│            ├─sshd(6098)───bash(6104)───pstree(6261)
           │            └─sshd(6102)───sftp-server(6149)
           ├─systemd-journal(542)
           ├─systemd-logind(853)
           ├─systemd-udevd(582)
           ├─tuned(1339)─┬─{tuned}(1658)
           │             ├─{tuned}(1660)
           │             ├─{tuned}(1667)
           │             └─{tuned}(1675)
           ├─udisksd(840)─┬─{udisksd}(856)
           │              ├─{udisksd}(871)
           │              ├─{udisksd}(935)
           │              └─{udisksd}(1023)
           ├─upowerd(1799)─┬─{upowerd}(1800)
           │               └─{upowerd}(1801)
           ├─vmtoolsd(878)─┬─{vmtoolsd}(931)
           │               └─{vmtoolsd}(945)
           ├─vmtoolsd(2494)─┬─{vmtoolsd}(2529)
           │                ├─{vmtoolsd}(2534)
           │                └─{vmtoolsd}(2636)
           ├─wpa_supplicant(1875)
           └─xdg-permission-(2273)─┬─{xdg-permission-}(2274)
                                   └─{xdg-permission-}(2276)
[root@localhost ~]#

我们经常会用到kill命令去杀死一个进程,但是有时会出现kill不成功的现象,这就要用到kill -9.
之所以这两个命令会有区别是因为所发送的信号(Signal)是不同的。默认情况下kill命令的参数为-15。
kill -15代表的信号为SIGTERM,这是告诉进程你需要被关闭,请自行停止运行并退出;
而ki11 -9代表的信号是SIGKIIL表示进程被终止,需要立即退出:
因此ki11 -9表示强制杀死该进程,这个信号不能被捕获也不能被忽略。

终止进程的运行2

pkill命令
根据特定条件终止相应的进程
常用命令选项
-U:根据进程所属的用户名终止相应进程
-t:根据进程所在的终端终止相应进程

[root@localhost ~]# su - test
上一次登录:二 411 16:13:30 CST 2023pts/0 上
[test@localhost ~]$
[test@localhost ~]$ pkill -9 -U 'test'
已杀死
[root@localhost ~]#

[root@localhost ~]# [root@localhost ~]# who
root     :0           2023-04-11 15:11 (:0)
root     pts/0        2023-04-11 15:11 (192.168.190.1)
root     pts/1        2023-04-11 17:02 (192.168.190.1)
root     pts/2        2023-04-11 17:50 (192.168.190.1)
root     pts/3        2023-04-11 17:51 (192.168.190.1)
[root@localhost ~]#

[root@localhost ~]# pkill -t 'pts/2' -9
[root@localhost ~]#

计划任务管理

at命令

一次性计划任务
at[HH:MM] [yyyy-mm-dd]
时间 年 月 日

[root@localhost ~]# date
2023年 04月 11日 星期二 18:02:58 CST
[root@localhost ~]# at 18:15
at> pgerp -U root | wc -l > /tmp/ps.root
at> <EOT>  (按Ctrl+D提交任务)
job 1 at Tue Apr 11 18:15:00 2023
[root@localhost ~]# cat /tmp/ps.root

atq查看未执行列表

[root@localhost ~]# atq
1       Tue Apr 11 18:15:00 2023 a root

atrm 列表号 删除列表

[root@localhost ~]# atrm 1
[root@localhost ~]# atq 1
[root@localhost ~]#

crontab命令

按照预先设置的时间周期 (分钟、小时、天、月、周) 重复执行用户指定的命令操作。 分 时 日 月 周
属于周期性计划任务
主要设置文件
全局配置文件,位于文件: /etc/crontab
系统默认的设置,位于目录: /etc/cron.*/
用户定义的设置,位于文件: /var/spool/cron/用户名
管理crontab计划任务
编辑计划任务
crontab -e -u 用户名
查看计划任务
crontab -l -u 用户名
删除计划任务
crontab -r -u 用户名
crontab任务配置格式1
在这里插入图片描述
任务配置格式2
在这里插入图片描述
例如30 5 8 6 7 代表每周日或6月8日5:30分执行
每年2或12月的前15天朝9晚5期间第30分执行IS操作
*分 时 日 月 周 is 命令用绝对路径
30 9-17 1-15 2,12 /usr/bin/is

[root@localhost ~]# which ls
alias ls='ls --color=auto'
        /usr/bin/ls
[root@localhost ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@localhost ~]# crontab -l
30 9-17 1-15 2,12 *     /usr/bin/ls

执行crontab需要crond.service是开启状态 否则crontab不生效

[root@localhost ~]# systemctl status crond.service
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
   Active: active (running) since 二 2023-04-11 15:10:59 CST; 3h 20min ago
 Main PID: 1353 (crond)
    Tasks: 1
   CGroup: /system.slice/crond.service
           └─1353 /usr/sbin/crond -n

411 15:10:59 localhost.localdomain systemd[1]: Started Command Scheduler.
411 15:10:59 localhost.localdomain crond[1353]: (CRON) INFO (RANDOM_DELAY will be scaled with...d.)
411 15:10:59 localhost.localdomain crond[1353]: (CRON) INFO (running with inotify support)
Hint: Some lines were ellipsized, use -l to show in full.

crontab -e [-u root] 编辑的是 /var/spool/cron/用户名下的文件

[root@localhost ~]# cd /var/spool/cron
[root@localhost cron]# ll
总用量 4
-rw-------. 1 root root 36 411 18:30 root
[root@localhost cron]# cat root
30 9-17 1-15 2,12 *     /usr/bin/ls
[root@localhost cron]#

vim /etc/crontab 需要格式用
分 时 日 月 周 +用户名来执行

[root@localhost ~]# vim /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
*/5  *  *  *  * root ls
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
-- 插入 --                                             

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值