首页 > 其他分享 >最强cron解析器

最强cron解析器

时间:2022-09-22 11:15:51浏览次数:85  
标签:解析器 awesome cron 位数 最强 import 解析 表达式

背景

大家有没有这么一种困境

我现在需要去配置一个定时任务:"每天早上九点执行任务"

若你有一个好的定时任务平台,相信很容易就能配置完成。那若是没有定时任务平台呢?是不是就要自己写cron表达式

那 "每天早上九点执行任务" 的cron表达式怎么写呢?

这个时候我会去百度一些cron在线生成,因为我比较菜

然而,现在能找到的在线解析生成cron的网站有很多,但是使用体验都不太好,他可能是长这样的

如果我的需求再复杂一点点,"工作日的每天早上九点执行任务",那又该怎么操作呢

大多时候,我更需要知道一个cron表达式它是什么意思,比如 "0 9 */3 * *"。 这个时候,有很多网页的cron反解析就不好用了。后来我才知道,原来cron表达式分5,6,7位数,而我们熟知的crontab是5位数,意思是6,7位数的cron表达式在linux上是不可用的。各个解析网页对5,6,7位数的cron反解析的支持也是参差不齐的。

那么有没有一种,使用起来比较简洁,又支持5,6,7位数的cron解析呢?不如自己手搓一个吧!

所以 awesome-cron 诞生了

awesome-cron介绍

我们先来看看它的使用,我争取一张图能说明

图片名称

是的,就这么简单,你只需要在输入框中输入cron表达式就行了

除了支持5,6,7位数的cron解析以外,我觉得它最大的亮点就是光标落在某处,就能在对应解释除标红,并且告诉你当前是时分秒还是什么,然后这个地方支持哪些写法

如果你只是一个使用者,那么你可以直接访问 传送门,就可以使用了

如果你是开发,那么很高兴地告诉你,它是一个vue组件,你可以引入到你的vue项目中

特点

  • Zero dependencies(0依赖)
  • Supports all cron expression special characters including * / , - ? L W, # (支持cron所有特殊符号的解析)
  • Supports 5, 6 (w/ seconds or year), or 7 (w/ seconds and year) part cron expressions(支持5,6,7位数的解析)
  • i18n support with 29 languages (国际化)

安装

npm install awesome-cron

使用

import { createApp } from "vue";
import cron from "awesome-cron";

const app = createApp(App);
app.use(cron);
app.mount("#app");

安装之后 你可以 全局加载到你的VUE SFC组建文件中,像这样:
<cron-parser><cronParser> 都是可以的

<template>
  <cron-parser></cron-parser>
</template>

or

<template>
  <cronParser></cronParser>
</template>

按需导入

手动导入

<script>
  import { defineComponent } from "vue";
  import { CronParser } from "awesome-cron";

  export default defineComponent({
    components: {
      CronParser,
    },
    setup() {
      return {};
    },
  });
</script>

<template>
  <CronParser></CronParser>
</template>

<style></style>

如果觉得这个cron解析不错,希望能给这个项目点个star⭐, 项目地址←

文章转至yongchin.xyz

标签:解析器,awesome,cron,位数,最强,import,解析,表达式
From: https://www.cnblogs.com/semishigure/p/16718470.html

相关文章

  • 定时任务的cron表达式
    前言对于开发人员来说,在做项目的过程中或多或少都会用到定时任务,Java开发一般会用SpringQuartz、xxl-job、Elastic-job来做定时任务调度框架。不论使用哪种框架,定时任务......
  • 28.解析器Parser
    什么是解析器因为前后端分离,可能有json、xml、html等各种不同格式的内容后端也必须要有一个解析器来解析前端发送过来的数据不然后端无法处理前端数据后端有一个渲染......
  • Android最强布局——ConstraintLayout约束布局
    ConstraintLayout首先,现附上官方文档:ConstraintLayout官方文档约束布局ConstraintLayout是一个ViewGroup,可以在Api9以上的Android系统使用它,它的出现主要是为了解决布局......
  • python网络爬虫常用解析器
    BeautifulSoupBeautifulSoup是一个HTML/XML的解析器,主要用于解析和提取HTML/XML数据。它基于HTMLDOM的,会载入整个文档,解析整个DOM树,因此时间和内存开销都会大很多,......
  • Linux定时任务——crontab
    常用crontab-e命令添加用户定时任务,语法格式非常简单,可以在下面的在线工具去测试格式是否正确以及具体的任务执行时间。crontab执行时间计算该命令适用于时间精度要求不......
  • cronTrigger 与 cron表达式星期有差异
    昨天写完定时任务 今天一测  不行阿 这个周有问题 月和日都正常跑到数据库一看cron表达式没问题阿那就是后台解析有问题了 后台解析用的是cronTriggerC......
  • .NET 纯原生实现 Cron 定时任务执行,未依赖第三方组件 (Timer 优化版)
    在上个月写过一篇 .NET纯原生实现Cron定时任务执行,未依赖第三方组件的文章,当时 CronSchedule的实现是使用了,每个服务都独立进入到一个while循环中,进行定期扫描是......
  • k8s--CronJob(CJ) 控制器
    CronJob介绍CronJob控制器以Job控制器资源为其管控对象,并借助它管理pod资源对象,job控制器定义的作业任务在其控制器资源创建之后便会立即执行,但CronJob可以以类......
  • Linux之定时任务crontab
      常用命令:#查看当前用户下所有的定时任务crontab-l#查看指定用户下的定时任务crontab-l-uwww#编辑定时任务crontab-e 在Linux中经常使用......
  • 执行一个crontab任务,执行完之后总是给我发邮件,怎么取消发邮件?
    执行一个crontab任务,执行完之后总是给我发邮件,怎么取消发邮件?-Linux新手园地-Chinaunix http://bbs.chinaunix.net/thread-4138145-1-1.htmlcrontab的默认输出对象是......