pc网站自动生成app,制作电子印章,一个县城广告公司利润,稷山做网站cat /etc/redhat-release看到操作系统的版本是CentOS Linux release 7.6.1810 (Core)#xff0c;uname -r可以看到内核版本是3.10.0-957.21.3.el7.x86_64 参考的博客有#xff1a; 1.《Linux anacron命令用法详解》 2.《详解anacron 命令》 3.《Anacron的用法》 4.《shell脚…cat /etc/redhat-release看到操作系统的版本是CentOS Linux release 7.6.1810 (Core)uname -r可以看到内核版本是3.10.0-957.21.3.el7.x86_64 参考的博客有 1.《Linux anacron命令用法详解》 2.《详解anacron 命令》 3.《Anacron的用法》 4.《shell脚本实现文件锁功能》 5.《 shell案例解决之flock示例》
anacron
anacron的设计目标是处理可能不会持续运行的系统上的任务一些在/etc/crontab里的定时任务因为一些情况比如关机而错过定时执行的时刻那么这些任务就有可能以后再执行而为了避免因这些特殊情况引发的定时任务执行次数减少可以将这个任务放在/etc/anacrontab里。在开机启动时候能够自动延时执行或者使用anacron -s手动触发。 /etc/anacrontab有anacron的配置文件格式如下:
period delay job-identifier commandperiod任务执行的时间间隔可以是 daily每日、weekly每周或 monthly每月。 delay任务启动前的延迟时间以分钟为单位。这可以防止系统刚刚启动时就执行任务。 job-identifier任务的唯一标识符用于确保每个任务只运行一次。 command要执行的实际命令或脚本。 我的系统里边/etc/anacrontab里边默认内容如下
# /etc/anacrontab: configuration file for anacron# See anacron(8) and anacrontab(5) for details.SHELL/bin/sh
PATH/sbin:/bin:/usr/sbin:/usr/bin
MAILTOroot
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY45
# the jobs will be started during the following hours only
START_HOURS_RANGE3-22#period in days delay in minutes job-identifier command
1 5 cron.daily nice run-parts /etc/cron.daily
7 25 cron.weekly nice run-parts /etc/cron.weekly
monthly 45 cron.monthly nice run-parts /etc/cron.monthlySTART_H0URS_RANGE表示延时任务只能在这段时间内执行 RANDOM_DELAY最大随机廷迟会在0~RANDOM_DELAY之间生成一个随机值这里使用ranDelay这里是我自己随意起的一个名字然后就是ranDelaydelay之后执行程序。 1 5 cron.daily nice run-parts /etc/cron.daily就表示每天在START_HOURS_RANGE(在此处是3点至22点之间)间隔开机ranDelay5分钟之后执行程序。 /etc/cron.d/0hourly记录每小时的计划任务可以看出里边默认有一条语句01 * * * * root run-parts /etc/cron.hourly。这条语句就是说明了每小时第1分钟以/etc/cron.hourly中脚本执行任务。
flock
在A终端执行flock -xn /tmp/txt.lock -c /shelllearn/flocktest.sh使用/tmp/txt.lock来让/shelllearn/flocktest.sh只有一个实例
然后在B终端再次flock -xn /tmp/txt.lock -c /shelllearn/flocktest.sh发现立马就退出了这表明锁文件还没有被释放。
此文章为8月Day 3学习笔记内容来源于极客时间《Linux 实战技能 100 讲》。