`

设定crontab在每月最后一天执行

阅读更多

如何设定crontab在每月最后一天执行一种方法:
for Linux
0 8 28-31 * * [ `date -d tomorrow +\%e` -eq 1 ] && do-something

for other Unix,BSD
0 8 28-31 * * [ `echo \`cal\` | awk '{print $NF}'` -eq 1 ] && do-something

另一种方法:
单独靠crontab判断比较复杂,所以把判断部分写到执行脚本中

#!/bin/bash
today=`date +%d`
last_day=`cal | xargs | awk '{print $NF}'`
if [ "$today" != "$last_day" ]; then
    exit 1
fi
....  # other codes start from here

分享到:
评论

相关推荐

    crontab 定时执行文件详解

    - 晚上11点到早上8点之间每两个小时执行一次,并在早上8点再次执行: ```bash 0 23-7/2,8 * * * echo "Have a good dream :)" >> /tmp/test.txt ``` - 每个月的4号和每周一至周三的早上11点执行某命令: ```...

    linux下crontab命令

    * 每月每天每小时的第 0 分钟执行一次 /bin/ls:0 * * * * /bin/ls * 在 12 月内, 每天的早上 6 点到 12 点中,每隔 20 分钟执行一次 /usr/bin/backup:*/20 6-12 * 12 * /usr/bin/backup * 周一到周五每天下午 5:00...

    Crontab命令.doc

    指的是在每月的每一天,从午夜到第二天凌晨两点之间,每隔两小时的20分钟,执行`echo "haha"`。 #### Oracle作业示例 在Oracle环境中,可以通过Crontab来定期执行SQL脚本,以实现数据库的维护工作。例如,创建一...

    crontab中英文手册。很清晰完整。

    格式通常为:`分 时 日 月 周 命令`,分别对应于一天中的分钟、小时、日期、月份和星期几,最后是执行的命令。 3. **时间表达式**:时间字段可以是具体的数字(例如,0-59分钟),也可以是一些特殊的符号(如*代表...

    cron-last-sunday:在每月的第一个,第n个或最后一个工作日运行cron任务

    在标准的 cron 系统中,我们通常使用类似于 `0 0 1 * *` 的格式来设定定时任务,这表示在每月的第一天的凌晨 0 点执行任务。然而,如果想要在每月的最后一个工作日执行任务,标准的 cron 表达式就无法胜任了。cron-...

    crontab使用

    - `4 2 4 1 * root run-parts /etc/cron.monthly`:每月第一天凌晨 2 点执行 `/etc/cron.monthly` 内的脚本。 综上所述,Crontab 不仅能够帮助用户自动化日常任务,还能实现复杂的调度需求。正确理解和使用 crontab...

    Crontab.zip

    3. 日期(1-31):定义每月的哪一天执行,但需考虑月份的天数。 4. 月份(1-12):定义哪个月执行。 5. 星期(0-7,0和7都代表周日):定义哪一周的哪一天执行。 6. 年份(1970-2099,通常省略,表示当前年份):可...

    linux中的定时器命令--crontab

    * 每月每天每小时的第 0 分钟执行一次 `/bin/ls`:`0 7 * * * /bin/ls` * 在 12 月内,每天的早上 6 点到 12 点中,每隔 20 分钟执行一次 `/usr/bin/backup`:`0 6-12/3 * 12 * /usr/bin/backup` * 周一到周五每天...

    Linux——Crontab使用详解.docx

    20 0-23/2 * * * echo"haha",这个命令将在每月每天的午夜 0 点 20 分,2 点 20 分,4 点 20 分....执行 echo"haha"。 Crontab 命令的其他参数: * crontab -l:列出用户目前的时程表 * crontab -r:删除用户目前...

    quartz/Cron/Crontab表达式在线生成工具

    4. **日期**(1-31):表示每月的哪一天,但要注意月份的天数限制,如二月的闰年和平年。 5. **月份**(1-12):定义一年中的哪个月。 6. **星期**(0-7,其中0和7均代表周日):表示一周中的哪一天,注意某些实现中...

    crontab shell linux

    # 每周一至周三每月第四天执行 0 4 4 * mon-wed date # 1月4号执行 0 4 4 1 * date ``` #### 四、Crontab文件存储位置 Crontab配置文件通常被存储在 `/var/spool/cron/crontabs/` 目录下,每个用户都有一个对应的...

    Solaris:crontab的用法.docx

    - `f5`表示一周中的哪一天(1-7,1代表周日)。 - `program`是要执行的命令或脚本。 可以使用星号`*`表示所有可能的值,范围`a-b`表示从a到b的连续范围,步进`*/n`表示每n个单位执行一次,以及逗号分隔的列表`a,...

    Linux crontab 命令格式.docx

    Linux 中的 crontab 命令是一种定时任务管理工具,允许用户在固定时间或固定间隔执行程序。crontab 命令的基本格式为:`* * * * * command`,其中每个星号 (`*`) 代表不同的时间单位,分别是分钟、小时、日期、月份...

    Linux下crontab命令的用法[归类].pdf

    Linux下crontab命令的用法 crontab命令是Linux系统下...* 30 6 */10 * * ls : 每月的1 、11 、21 、31 日是的 6 :30 执行一次 ls 命令 这些示例展示了Crontab命令的强大功能和灵活性,可以满足各种定时任务的需求。

    linux中crontab计划任务linux操作系统电脑资料.doc

    Linux 中 Crontab 计划任务是 Linux 操作系统中的一种任务计划工具,可以让用户在特定的时间执行特定的命令或程序。下面将详细介绍 Crontab 的使用方法、格式、参数、应用实例等。 Crontab 的使用方法 Crontab ...

    linux使用crontab实现PHP执行计划定时任务

    在Linux系统中,Crontab是常用的一种定时任务调度工具,用于在预定时间执行命令或脚本。Crontab文件通常位于/var/spool/cron/目录下,每个用户都有一个独立的Crontab文件,而根用户(root)则有权限设置所有用户的...

    Linux下定时自动执行Oracle_SQL

    Crontab支持多种时间格式,包括分钟、小时、天、月以及星期几,这使得它成为一个非常灵活的时间管理工具。 #### Oracle SQL:数据库查询语言 Oracle SQL是Oracle数据库的查询语言,它提供了一系列功能强大的命令和...

    linux 计划任务cron--怎么定时执行的指令

    - `42 4 1 * * root run-parts /etc/cron.monthly`:表示每月第一天凌晨4点42分执行`/etc/cron.monthly`目录下的脚本。 #### 四、Cron的表达式详解 Cron表达式由六个字段组成,从左至右依次为:分钟、小时、月份...

    定时任务执行器

    2. **调度(Scheduling)**:调度是设置任务执行的时间规则,可以是每天的特定时间、每周的某一天或多天、每月的特定日期等。 3. **触发器(Trigger)**:触发器是实现调度的具体机制,它定义了何时启动任务。例如...

    Ubuntu系统下用Crontab命令定时执行PHP文件详解

    它支持按分钟、小时、天、月和周来设定周期性的任务。Crontab的工作原理是读取特定格式的配置文件,这些配置文件被称为Cron表(Cron table)。Cron表中的每一行都定义了一个具体的任务及其执行的时间周期。 #### ...

Global site tag (gtag.js) - Google Analytics