💙 设置多久执行一次定时任务,可以是指令也可以是脚本
💙 语法格式:* * * * * 任务
任务 | 含义 | 范围 |
---|---|---|
第一个 “*” | 一小时当中的第几分钟 | 0-59 |
第二个 “*” | 一天当中的第几小时 | 0-23 |
第三个 “*” | 一月当中的第几天 | 1-31 |
第四个 “*” | 一年当中的第几月 | 1-12 |
第五个 “*” | 一周当中的星期几 | 0-7(0和7都代表星期日) |
💙执行流程:
(1)创建定时任务 crontab -e
(2)编辑定时任务 */1 * * * * date >> /home/yaya/date.txt
【举个栗子】
(3)按Esc,输入:wq
保存并退出
crontab -l
crontab -r
service crond restart
💙特殊符号说明:
符号 | 含义 |
---|---|
* | 代表任何时间 |
, | 代表不连续的时间 |
- | 代表连续的时间范围 |
*/n | 代表每隔多久执行一次 |
案例分析:
(1)*/1 * * * *
代表每一分钟
(2)0 8,12,16 * * *
代表每天的八点、十二点、十六点整
(3)0 8 * * 1-5
代表每周的周一到周五八点整
(4)*/15 * * * *
代表每隔十五分钟
🌔 检查 atd 是否处于运行状态:
ps -ef | grep atd
🌔 创建一个 at 定时任务:
(1)设置时间: at now + minutes
(2)任务内容:echo "hello boy!"
【并没有定时输出到控制台,而是通过发邮件来完成的】
(3)按两次 Ctrl + D 保存任务并退出
🌔 时间的定义:【主要有一下几种方法】
(1)当天的 小时:分钟,如果时间已经过去那么就会在第二天执行
(2)利用模糊的词语指定时间,midnight、noon、teatime
(3)采用十二小时计时制,AM、PM
(4)采用具体的日期,HH:MM year-month-day
(5)相对计时法, now + count time-units
now 代表当前时间,count 代表阿拉伯数字,time-units 代表时间单位【minutes、hours、days、weeks】
(6)直接使用 today(今天)、tomorrow(明天)
🌔 提供的选项:
💌 1.分区的概念?
在Linux中,分区就是把一片空间分割成多块。【将块设备按照物理地址分成若干区域作为可独立管理的电子设备】
💌 2.分区与Linux文件系统的联系?
每个硬盘有很多个分区,Linux 将每个分区挂载到对应目录上。
💌 3.硬盘符号都代表什么呢?
首先:硬盘分为两种,第一种是IDE硬盘,第二种是SCSI硬盘【第二种比较常用,以它为例】
该种硬盘标识为 sdx~:
其中 sd 标志着是SCSI类型的硬盘分区;
x 为盘号,有几个盘号就对应几块硬盘;
盘号 | 代表含义 |
---|---|
a | 基本盘 |
b | 基本从属盘 |
c | 辅助主盘 |
d | 辅助从属盘 |
~ 代表分区,用数字表示为当前硬盘的几号分区。
以我自己的CentOS为例【只分配了一块硬盘】
sda 代表一块SCSI类型的基本盘,只有三个分区,分别挂载到了 boot 、 / 、swap 目录下
💌 4.如何查看分区的挂载情况呢?
通过lsblk
指令可以查看分区的挂载情况【如上图】
也可以再添加一个选项:-f
可以显示出每个分区在格式化后产生的唯一的四十位的标识符【UUID】
💌 5.如何为自己的Linux系统增加硬盘呢?【磁盘分区、格式化、挂载】
(1)通过虚拟机的设置添加硬盘
按照提示下一步到分配磁盘大小【此处以1G为例】
添加成功后可以如下显示
(2)重启系统就可以识别到新硬盘
在终端中,可以通过reboot
指令重启虚拟机,通过lsblk
指令再次查看硬盘情况即可
此时已经识别到了主盘辅助盘 **sdb **,但是还没为其分区进而没有显示挂载情况。
(3)为硬盘添加分区
通过fdisk /dev/sdb
指定是 **sdb **这块硬盘,通过m
可以查看对硬盘操作指令的帮助信息【系统管理员或具有管理员权限的用户才能使用这条指令】
选择命令n
进行分区:【分区号我设为 sdb2(1-4),其他的默认即可】
此时分区的信息只是保存在内存中,通过命令w
将信息写入到硬盘中【如果想取消分区配置输入q
退出】
此时再次查看已经可以显示出分区,但因为没有格式化所以是没有UUID【】的
(4)格式化新添加的硬盘
利用mkfs -t ext4 /dev/sdb2
指令来完成硬盘格式化
该指令有三个选项,这个 ext4 就是一种文件系统类型,虚拟机为各种文件系统提供统一的接口。
此时可以看出 sdb2 的通用唯一标识码已经有了【UUID】
(5)将硬盘挂载到指定目录下
首先确定要挂载的目录,因为后期要取消这个硬盘,所以我在根目录下手动创建一个新目录 mkdir \newfile
通过mount /dev/sdb2 /newfile
指令将硬盘设备 **sdb2 **挂载到根目录下的 **newfile **目录下
通过lsblk -f
查看详细情况,可以看出 **sdb2 **的挂载点为 /newfile
6.那么如何卸载一个硬盘呢?【指的是断开与挂载点的连接】
可以通过umount 设备或挂载目录
卸载已经挂载的设备。
有一个值得注意的点,通过命令行完成挂载的在系统重启后会失效。
7.那么如何实现永久挂载呢?
通过vim /etc/fstab
指令修改该文件的配置信息,来实现永久挂载【可以使用UUID也以使用硬盘的地址】
通过mount -a
指令立刻生效或重启系统后自动生效。
PS:对vim编辑器的用法不了解可以查看这边文章点击跳转
8.如何查询磁盘的使用情况呢?
(1)通过df -h
可以查看磁盘的整体使用情况,其中** .host:/** 是共享文件夹的使用情况【当使用情况超过百分之八十就需要清理或添加新磁盘了】
(2)也可以通过du -h
查询指定目录的磁盘使用情况【默认是将其子目录也全部显示出来的】
为了不显示子目录我们可以通过选项--max-depth=x
指定显示深度为x的目录信息。
该命令提供了一些参数供选择:
9.磁盘有没有哪些比较实用的指令呢?【以opt目录为例】
(1)统计目录下普通文件的个数
通过ls -l \opt | gerp "^-" | wc -l
指令来完成文件的计数
整体分为三次处理,第一次以长格式显示出 opt 目录下的所有文件,接着通过管道过滤利用gerp指令结合正则表达式筛选出以-
开头的信息,最后再通过管道利用 wc指令完成计数。
(2)统计目录下目录的个数
与上述指令类似,只需要将正则表达式的-
修改成d
即可
(3)统计目录下以及子目录下普通文件的个数【通过参数R递归显示子目录信息】
通过指令ls -lR /opt | grep "^-" | wc -l
来完成
(4)统计目录下以及子目录下目录的个数【通过参数R递归显示子目录信息】
通过指令ls -lR /opt | grep "^d" | wc -l
来完成
(5)以树状显示目录结构【默认情况下没有tree指令,可以通过 yum install tree来安装指令】
通过tree 目录
指令查看指定目录的属性结构【部分截图】