Linux-5-命令【文件/磁盘/进程/用户/时间/定时任务】
本文最后更新于 2023-09-19,文章内容可能已经过时。
第 5 章 常用基本命令(重要)
Shell 可以看作是一个命令解释器,为我们提供了交互式的文本控制台界面。我们可以通过终端控制台来输入命令,由 shell 进行解释并最终交给内核执行。 本章就将分类介绍常用的基本 shell 命令。
5.1 帮助命令
5.1.1 man(manual手册) 获得帮助信息
1)基本语法
man [命令或配置文件] (功能描述:获得帮助信息)
2)显示说明
5.1.2 help 获得 shell 内置命令的帮助信息
一部分基础功能的系统命令是直接内嵌在 shell 中的,系统加载启动之后会随着 shell一起加载,常驻系统内存中。这部分命令被称为“内置(built-in)命令”,如cd,exit;相应的其它命令被称为“外部命令”。
1)基本语法
help 命令(功能描述:获得 shell 内置命令的帮助信息)
想要获得外部命令的参数说明版,man内嵌了一个方法,即通过: xxx(命令名称+空格)–help 查询
5.1.3 常用快捷键
快捷键 | 作用 |
---|---|
Ctrl + s | 作用是暂停终端的输出,如果您想恢复已暂停的输出,则需要按下Ctrl + Q |
Ctrl + c | 停止进程 |
ctrl + l | 清屏 彻底清屏 : reset |
tab | 补全/提示 |
上下 | 查看执行过的命令 |
可以使用 type + 想要查看类型的命令,查看当前查看命令是内置命令还是外置命令。
reset命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空。
这样虽然比较清爽,但整个命令过程速度有点慢,使用较少。
reset命令在终端控制错乱时非常有用。如果屏幕字符显示卡住了,此时就需要用reset命令了。
5.2 文件目录类
5.2.1 pwd 显示当前工作目录的绝对路径
pwd: print working directory 打印工作目录
1)基本语法
pwd (功能描述:显示当前工作目录的绝对路径)
pwd -P 显示软连接实际路径
5.2.2 ls 列出目录的内容
ls:list 列出目录内容
1)基本语法
ls [选项] [目录或是文件]
2)选项说明
选项 | 功能 |
---|---|
-a | 全部的文件,连同 . 开头的隐藏文件也显示 |
-l | 长数据串联列出,可以把权限和文件类型等信息一并输出 |
-h | 人性化输出 如文件以 kb 大小显示 默认字节 |
每行列出的信息依次是: 文件类型与权限 链接数 文件属主 文件属组 文件大小用byte 来表示 建立或最近修改的时间 名字
5.2.3 cd 切换目录
cd:Change Directory 切换路径
1)基本语法
cd [参数]
2)参数说明
参数 | 功能 |
---|---|
cd 绝对路径 | 切换路径 |
cd 相对路径 | 切换路径 |
cd ~ 或 dd | 回到自己的家目录 |
cd - | 回到上一次目录 |
cd … | 返回上一层级 |
cd -P | 跳转实际物理路径 并非快捷路径 |
5.2.4 mkdir 创建一个新的目录
mkdir:Make directory 建立目录
1)基本语法
mkdir [选项] 要创建的目录
2)选项说明
选项 | 作用 |
---|---|
-P | 递归创建多层父级【如果不存在】 |
5.2.5 rmdir 删除一个空的目录
rmdir:Remove directory 移除目录
1)基本语法
rmdir 要删除的空目录
5.2.6 touch 创建空文件
1)基本语法
touch 文件名称 这里的文件如果不人为指定后缀,默认是文本文件,和vim文件不同的是,touch可以创建空文件。vim如果创建文件不书写内容,不会创建空文件,如果保存并退出就行。
5.2.7 cp 复制文件或目录
1)基本语法
cp [选项] source dest
(功能描述:复制 source
文件到 dest
)
2)选项说明
选项 | 作用 |
---|---|
-r | 递归复制子目录 |
5.2.8 rm 删除文件或目录
1)基本语法
rm [选项] deleteFile
(功能描述:递归删除目录中所有内容)
2)选项说明
选项 | 作用 |
---|---|
-r | 递归删除子目录 |
-f | 强制执行,无需同意 |
-v | 显示详细过程 |
5.2.9 mv 移动文件与目录或重命名
1)基本语法
(1)mv oldNameFile newNameFile
(功能描述:重命名)
(2)mv /temp/movefile /targetFolder
(功能描述:移动文件)
5.2.10 cat 查看文件内容 (concatenate and print files)
查看文件内容,从第一行开始显示。
1)基本语法
cat [选项] 要查看的文件
2)选项说明
选项 | 作用 |
---|---|
-n | 显示所有行的行号,包括空行 |
5.2.11 more 文件内容分屏查看器
more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more 指令中内置了若干快捷键,详见操作说明。
1)基本语法
more 要查看的文件
2)操作说明
操作 | 作用 |
---|---|
space 【空格】 | 向下翻一页 |
Enter | 向下翻一行 |
q | 退出 |
ctrl + f | 向下翻一屏 |
ctrl + b | 向上翻一屏 |
= | 输出当前行行号 |
:f | 输出文件名和当前行行号 |
5.2.12 less 分屏显示文件内容
less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
1)基本语法
less 要查看的文件
2)操作说明
操作 | 作用 |
---|---|
space 【空格】 | 向下翻一页 |
[pagedown] | 向下翻一页 |
[pageup] | 向上翻一页 |
/字符串 | 向下搜索. n: 下一个,N: 上一个 |
?字符串 | 向上搜索. n: 下一个,N: 上一个 |
q | 退出 |
5.2.13 echo
echo 输出内容到控制台
1)基本语法
echo [选项] [输出内容]
选项:
-e: (escape character)支持反斜线控制的字符转换
控制字符 | 作用 |
---|---|
\\ |
输出\ 本身 |
\n |
换行符 |
\t |
制表符 |
5.2.14 head 显示文件头部内容
默认前十行
想指定行数字如5行:
head -n 5
5.2.15 tail 输出文件尾部内容
默认后十行
想指定行数字如5行:
tail -n 5
想要监视文件变化【末尾】
参数 -f
: 举例
tail -f test.txt
若复写,可以复写,检测的控制台会报错。此时如果使用vim进行修改,追踪不会更新,因为文件在硬盘文件其实在底层是以一个带有index的结点进行记录的,就是inode,我们可以使用 ls -i 查看当前文件的索引号。而追踪的命令其实是根据index进行追踪,使用vim进行更改,会发现index变了。自然追踪也出现了问题。vim本质是先写到.swp文件里面,然后进行替换索引的,所以索引号发生了变化。
按 ctrl + s:可以暂停显示追踪(但其实还是后台记录了更新)
按 ctrl + q:可以继续显示追踪
按 ctrl + c:可以退出进程
5.2.16 > 输出重定向和 >> 追加
1)基本语法
(1)ls -l > 文件
功能描述:列表的内容写入文件 a.txt 中(覆盖写)
(2)ls -al >> 文件
功能描述:列表的内容写入文件 a.txt 中(追加)
(3)cat 文件1 > 文件2
功能描述:列表的内容写入 文件2
中(覆盖写)
(4)echo “xxxxxx” >> 文件
功能描述:列表的内容写入文件中(追加写)
5.2.17 ln 软链接
使用链接,文件类型是l,正常文件是 -,而文件夹是d

不加 -s 相当于硬链接,删除链接文件对目标文件在磁盘的存储无影响。软连接就是一个文件指向,软链接类似于链表的一个节点,硬链接类似于一个指针。
加上 -s 相当于软链接,新建一个新的inode,指向目标结点,记录标记文件的地址。
一个文件当所有的硬链接数为0,此时没有能指向物理磁盘的文件,才会真正删除,在此之前哪怕删除源文件,还可以通过未删除的硬链接访问到这个文件。
新建一个目录后,目录本身是指向自身inode的一个硬链接,新建的目录内也有一个叫“.”的硬链接指向新建的目录,所以新建目录的硬链接数目是2
5.2.18 history 查看已经执行过历史命令
**history [数字] :**显示指定数目的行数
![数字] :重复执行指定行数的命令
history -c:清除所有历史
5.3 时间日期类

5.3.1 date 显示当前时间
加号是需要打出来的,不是连接符号

date +%s : 把当前日期以时间戳形式显示
5.3.2 date 显示非当前时间
显示前一天
date -d '1 day ago'
显示明天
date -d '-1 day ago'
5.3.3 date 设置系统时间
date -s 字符串时间
5.3.4 cal 查看日历
cal [选项] 不加选项显示本年,加了填对应年份
5.4 用户管理命令
5.4.1 useradd 添加新用户
添加一个新用户
useradd 用户名
添加新用户到一个已知组
useradd -g 组名 用户名
-M
不为用户设置家目录,一般用于创建系统用户
-d [/home/xxx (用户名)]
新建用户但是给它的家目录改名,用户名不变。而如果使用有root权限的用户修改家目录的名称,本质上登录会显示找不到自己的家目录,然后跳转到home目录,并没有达到改变该用户的家目录的效果
5.4.2 passwd 设置用户密码
1)基本语法
passwd 用户名
(功能描述:设置用户密码)
5.4.3 id 查看用户是否存在
1)基本语法
id 用户名
5.4.4 cat /etc/passwd 查看创建了哪些用户
5.4.5 su 切换用户
其实这里su切换用户是嵌套会话,我们可以通过exit退出,返回之前的用户,不需要再su切换回去。
su = switch user
切换用户只能获取执行权限,获取不了环境变量
su 用户名
切换用户只能获取执行权限,获取环境变量
su - 用户名
5.4.6 userdel 删除用户
删除用户但是保留家目录
userdel 用户名
删除用户不保留家目录,同时会把这个用户相关的文件都删除
userdel -r 用户名
5.4.7 who 查看登录用户信息
显示自身用户名称
whoami
同时显示登录时间
who am i
5.4.8 sudo 设置普通用户具有 root 权限
sudo的英文全称是super user do,即以超级用户(root 用户)的方式执行命令。
想要增加 sudo 用户,可以 修改 /etc/sudoers
文件,在已有用户下面添加相同格式的配置
root ALL=(ALL) ALL
fanxy ALL=(ALL) ALL
如果配置使用 sudo 不需要输密码
root ALL=(ALL) ALL
fanxy ALL=(ALL) NOPASSWD:ALL
5.4.9 usermod 修改用户
1)基本语法
usermod -g 用户组 用户名
必须给定存在的组,默认组 id 1
5.5 用户组管理命令
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同, 如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 /etc/group
文件的更新。
5.5.1 groupadd 新增组
groupadd 组名
5.5.2 groupdel 删除组
groupdel 组名
5.5.3 groupmod 修改组
groupmod -n 新组名 老组名
5.5.4 cat /etc/group 查看创建了哪些组
5.6 文件权限类
5.6.1 文件属性
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。
为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属的用户和组。
c字符文件,b块文件,l链接文件。

rwx 对于文件和文件夹的不同含义
-
文件:
r:文件可读。
w:文件可写,可修改,但不代表科删除,删除一个文件需要对文件所在目录的写权限。
x:文件可执行
-
文件夹:
r:文件夹可以读取 : ls
w:文件夹可以修改,即目录内可以 新建,删除,重命名内部的文件或文件夹
x:文件夹可被进入
新建一个目录后,目录本身是指向自身inode的一个硬链接,新建的目录内也有一个叫“.”的硬链接指向新建的目录,所以新建目录的硬链接数目是2
5.6.2 chmod 改变权限

5.6.3 chown 改变所有者
改变文件或用户的所有者 【括号只代表占位符属性,不需要打】
chown [选项] [最终用户] [文件或目录]
选项 | 作用 |
---|---|
-R | 递归进行【子目录】 |
5.6.4 chgrp 改变所属组
改变文件或目录的所属组 【括号只代表占位符属性,不需要打】
chown [最终用户组] [文件或目录]
5.7 搜索查找类
5.7.1 find 查找文件或者目录
递归的从指定目录进行搜索,把满足条件的文件显示在终端【括号只代表占位符属性,不需要打】
find [搜索范围] [选项]
选项 | 作用 |
---|---|
-name | 按文件名查询 |
-user | 按所属用户查询 |
-size | 按文件大小查询:单位为:【b 块 512子节】【c 子节】【w 词 2子节】【k 千子节】【M 兆字节】【G 吉子节】 |
5.7.2 locate 快速定位文件路径
最好每次查询之前要更新一下!
locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。
更新方法
updatedb
类似的也可以通过
which命令 + 命令查别名和位置
where is 命令 可以查位置
5.7.3 grep 过滤查找及 “|” 管道符
“|” 管道符,代表上一个命令的输出结果传递给下一个命令
选项 | 效果 |
---|---|
-i | 忽略大小写 |
-m | 最大匹配个数 |
-n | 显示匹配行以及行号 |
5.8 压缩和解压类
5.8.1 gzip/gunzip 压缩
1)功能描述:压缩文件,只能将文件压缩为*.gz文件
gzip 文件
2)经验技巧
- 只能压缩文件不能压缩目录
- 不保留原来的文件
- 同时多个文件会产生多个压缩包
5.8.2 zip/unzip 压缩
1)基本语法
压缩(功能描述:压缩文件和目录的命令)
zip [选项] XXX.zip
选项 | 效果 |
---|---|
-r | 忽略大小写 |
解压缩
unzip [选项] XXX.zip
选项 | 效果 |
---|---|
-d | 指定解压后的存放目录 |
5.8.3 tar 打包【重要】
一般就是
压缩:
tar -zcvf xxxx xxxx xxxx xxxx
解压【指定目录,可以不指定,去除 -C 后面的】:
tar -zxvf -C /xxx/xxx/
打包目录,压缩后的格式 .tar.gz
tar [选项] XXX.tar.gz 将要打包进去的内容
选项 | 效果 |
---|---|
-z | 调用gzip,-z打包同时压缩 |
-x | 解包 .tar 文件 |
-c | 产生 .tar 打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-C | 指定解压目录 |

5.9 磁盘查看和分区类
5.9.1 du 查看文件和目录占用的磁盘空间
disk(磁盘) 一般都不会打具体文件,我们使用ls的衍生命令,或者ll就可以了。
而直接使用,或者使用 -a(显示的更多),显示的太冗余,我们只关心具体占用,就用-s(只显示总和)。但是这么操作显示又太少,就用最后的 : du --max-depth=n(这里填1效果很好),可以选择显示层级

5.9.2 df 查看磁盘空间使用情况
df : disk free 磁盘空余
选项 | 作用 |
---|---|
-h | 以人类易读的 GBytes KBytes 等显示 |
free -h :通过命令 free,可以查看当前内存占用情况
5.9.3 lsblk 查看设备挂载情况
lsblk 查看设备挂载情况
选项 | 作用 |
---|---|
-f | 查看详细挂载信息,显示文件系统信息 |
MAJ:MIN : 显示设备的主要和次要设备号,MAJ(major number)表示不同的设备类型,MIN(minor number)表示同一个设备的的不同分区。
RM : 显示设备是否可移动。请注意,在此示例中,设备sr0的RM值等于1,表示它是可移动的。
SIZE : 提供有关设容量的信息。
RO : 显示设备是否为只读。在这种情况下,所有设备的RO均为RO = 0,表示它们不是只读的。
TYPE : 显示块设备是磁盘还是磁盘中的分区(部分)的信息。在此示例中,sda和sdb是磁盘,而sr0是只读存储器(rom)。
MOUNTPOINT : 显示设备的挂载点。
sr0其实指的是光驱。硬盘以前有IDE硬盘,但是现在已经不常用了,而常用的是SATA硬盘,还有SCSI小型计算机接口硬盘,服务器一般用的这个。像vda,就是虚拟硬盘。
5.9.4 mount/umount 挂载/卸载
对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录、一个独立且唯一的文件结构。
Linux中每个分区都是用来组成整个文件系统的一部分,它在用一种叫做“挂载”的处理方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来,要载入的那个分区将使它的存储空间在这个目录下获得。
这部分 CSDN 部分我有详细笔记,日后如果有需要单独记录
5.9.5 fdisk 分区
1)基本语法
fdisk -l (功能描述:查看磁盘分区详情)
fdisk 硬盘设备名 (功能描述:对新增硬盘进行分区操作)
这部分 CSDN 部分我有详细笔记,日后如果有需要单独记录
5.10 进程管理类
进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。
5.10.1 ps 查看当前系统进程状态
这种加 - 的选项,就是 类unix格式
,而不加的是 类bsd格式
。
a的意思重在所有用户,x重在所有进程,二者结合用就是所有用户的所有进程
加了 a 或者是下面的 -e 会把和用户无关的也展示,如果仅仅是当前用户的,可以省略。什么都不加只会显示和当前终端相关的进程。
ps = process status 进程状态
1. 基本用法
查看系统所有进程
ps aux | grep xxx
查看系统所有进程,可以查看父子进程的关系
ps -ef | grep xxx
选项 | 作用 |
---|---|
a | 列出待用终端所有用户进程 |
x | 列出当前用户所有进程,包括没用终端的进程 |
u | 面向用户友好显示风格 |
-e | 列出所有进程 |
-u | 列出某个用户关联的所有进程 |
-f | 显示完整格式的进程列表 |
2. 详细信息说明
ps aux 说明
信息 | 解释 |
---|---|
USER | 所属用户 |
PID | 进程的 ID 号 |
%CPU | CPU占比 越高越耗费资源 |
%MEM | 内存占比 越高越耗费资源 |
VSZ | 该进程占用虚拟内存的大小 单位 KB |
RSS | 该进程占用实际内存的大小 单位 KB |
TTY | 该进程在哪个终端运行 CentOS 来说: tty1 是图形化端。tty2~tty6 是本地字符界面终端。 pts/0-255 是虚拟终端 |
STAT | 进程状态。【R:运行状态】【S:睡眠状态】【T:暂停状态】【Z:僵尸状态】【s:包含子进程】【l:多线程】【+:前台显示】 |
START | 进程启动时间 |
TIME | 进程占用 CPU 时间,不是系统时间 |
COMMAND | 产生这个进程的命令和参数 |
ps -ef 说明
信息 | 解释 |
---|---|
UID | 用户的 ID 号 |
PID | 进程的 ID 号 |
PPID | 父进程的 ID 号 |
C | CPU 用于计算执行优先级的因子,数值越大,表明进程是 CPU密集型计算 ,执行优先度会降低;越小证明是 IO密集型计算 ,执行优先度会高 |
TTY | 该进程在哪个终端运行 CentOS 来说: tty1 是图形化端。tty2~tty6 是本地字符界面终端。 pts/0-255 是虚拟终端 |
STAT | 进程状态。【R:运行状态】【S:睡眠状态】【T:暂停状态】【Z:僵尸状态】【s:包含子进程】【l:多线程】【+:前台显示】 |
TIME | 进程占用 CPU 时间,不是系统时间 |
CMD | 产生这个进程的命令和参数 |
如果想查看进程的 CPU占用率和内存占用率,可以使用 aux
如果想查看 进程的父进程ID 可以使用 ef
5.10.2 kill 终止进程
可以通过 kill -l 查看各种kill信号代表的含义
kill [选项]进程号(功能描述:通过进程号杀死进程)
killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
选项 | 解释 |
---|---|
-9 | 强迫停止 杀死进程 |
5.10.3 pstree 查看进程树
pstree [选项]
选项 | 解释 |
---|---|
-p | 显示进程的PID |
-u | 显示所属用户 |
5.10.4 top 实时监控系统进程状态
top [选项]
选项 | 解释 |
---|---|
-d 秒数 | 指定每多少秒刷新一次,默认 3秒 |
-i | 不显示闲置和僵尸进程。只要刷新时段内用过CPU的进程,都会显示,但这些进程可能在刷新时点又睡了 |
-p | 通过指定监控进程 ID 来只监控一个指定 ID 的进程状态 |
操作按钮
操作 | 作用 |
---|---|
P | 以 CPU使用率 进行排序 |
M | 以 内存使用率 进行排序 |
N | 以 PID 进行排序 |
q | 退出 |
查询字段解释
第一行:任务队列信息
内容 | 说明 |
---|---|
00:16:30 | 系统时间 |
up 5 day, 10:10 | 系统运行时间 |
2 users | 目前系统登录两个用户 |
load average: 0.32,0.35,0.24 | 系统在之前 1 分钟,5 分钟,15 分钟的平均负载。一般认为小于 1 时,负载较小。如果大于 1 ,系统已经超出负载 |
第二行:进程信息
内容 | 说明 |
---|---|
Tasks: 114 total | 系统进程数目 |
1 running | 正在运行的进程数 |
116 sleeping | 睡眠的进程数 |
0 stopped | 正在停止的进程数目 |
0 zombie | 僵尸进程数目 |
第三行: CPU 信息
内容 | 说明 |
---|---|
%Cpu(s) 2.2 us | 用户模式占用的 CPU 百分比 |
2.3 sy | 系统模式占用的 CPU 百分比 |
0.0 ni | 改变过优先级的用户进程占用 CPU 百分比 |
95.2 id | 空闲 CPU 的 CPU 百分比 |
0.3 wa | 等待输入/输出的进程的占用 CPU 百分比 |
0.0 hi | 硬中断请求服务占用 CPU 百分比 |
0.0 si | 软中断请求服务占用 CPU 百分比 |
0.0 st | st【Steal time】虚拟时间百分比,就是当拥有虚拟机的时候,虚拟 CPU 等待实际 CPU 的时间百分比 |
第四行:行为物理内存信息
内容 | 说明 |
---|---|
KiB Mem : 3782696 total | 物理内存的总量 单位 KB |
剩下的字面意思能看懂。分别为 空闲,使用中,缓存。
第五行:交换分区(swap)信息
同第四行的格式。
5.10.5 netstat 显示网络状态和端口占用信息
基本用法
查看指定进程网络信息
netstat -anp | grep 端口号
查看网络端口号占用情况
netstat -nlp | grep 端口号
选项 | 解释 |
---|---|
-a | 显示所有正在监听【listen】和未监听的套接字【socket】 |
-n | 拒绝显示别名 能显示数字尽量显示数字 |
-l | 仅列出正在监听的服务状态 |
-p | 表示显示哪个进程在调用 |
5.11 crontab 系统定时任务
5.11.1 crontab 服务管理
Ubuntu
是 cron
,没有d
重启 crond 服务
systemctl restart crond
5.11.2 crontab 定时任务设置
基本语法
crontab [选项]
选项 | 解释 |
---|---|
-e | 编辑 crontab 定时任务 |
-l | 查询 crontab 定时任务 |
-r | 删除当前用户所有的 crontab 任务 |
进入 crontab 编辑界面,会打开 vim 编辑页面
* * * * * 执行的任务
含义如下
项目 | 含义 | 范围 |
---|---|---|
第 1 个 * | 一小时的第几分钟 | 0-59 |
第 2 个 * | 一天的第几个小时 | 0-23 |
第 3 个 * | 一个月中的第几天 | 1-31 |
第 4 个 * | 一年当中的第几月 | 1-12 |
第 5 个 * | 一周当中的星期几 | 0-7 0和7都代表周日 |
特殊符号
符号 | 含义 |
---|---|
* | 任何时间。 比如第一项设置 * 代表:一小时中每分钟都执行一次命令 |
, | 代表不连续的时间。 如"0 8,12,16 * * * 命令" 表示每天的 8点0分,12点0分,16点0分都执行一次命令 |
- | 代表连续的时间范围。 比如 “0 5 * * 1-6 命令” 表示,每周一到周六的凌晨 5点0分执行命令 |
*/n | 代表每隔多久执行一次命令。 比如 “*/10 * * * *” 表示,每隔 10 分钟执行一次命令 |
一些案例
符号 | 含义 |
---|---|
45 22 * * * | 每天 22 点 45 分执行 |
0 5 1,15 * * | 每个月 1号和15号 的凌晨 5点0分执行 |
40 4 * * 1-5 | 每周一到周五 的凌晨 4点40分执行 |
0 0 1,15 * 1 | 每个月 1号和15号 每周一的 0点0分都会执行。注意:星期几和几号不要同时出现,都代表天,可读性差 |
- 感谢你赐予我前进的力量