crontab表达式全*啥意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了crontab表达式全*啥意思相关的知识,希望对你有一定的参考价值。

*表示通配符,在各自的位置则分别表示匹配每一分钟,每一小时,每一天...。所以5个全*表示每隔一分钟执行一次命令。 参考技术A crontab文件的含义:
用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:
minute hour day month week command
其中:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。

正则表达式中的 ^ 和 $ 是啥意思?

【中文标题】正则表达式中的 ^ 和 $ 是啥意思?【英文标题】:What do ^ and $ mean in a regular expression?正则表达式中的 ^ 和 $ 是什么意思? 【发布时间】:2022-01-23 20:44:18 【问题描述】:

"\\w+@\\w+[.]\\w+""^\\w+@\\w+[.]\\w+$" 有什么区别?我试过用谷歌搜索它,但没有运气。

【问题讨论】:

【参考方案1】:

^ 表示“匹配字符串的开头”(更准确地说,是字符串中第一个字符之前的位置,因此它与实际字符不匹配)。

$ 表示“匹配字符串的结尾”(字符串中最后一个字符之后的位置)。

两者都称为anchors,并确保匹配整个字符串而不仅仅是子字符串。

因此,在您的示例中,第一个正则表达式将在 email@address.com.uk 上报告匹配,但匹配的文本将是 email@address.com,可能不是您所期望的。第二个正则表达式将失败。

小心,因为一些正则表达式实现隐式地将正则表达式锚定在字符串的开头/结尾(例如 Java 的 .matches(),如果您正在使用它)。

如果设置了多行选项(例如,使用(?m) 标志,或者通过执行Pattern.compile("^\\w+@\\w+[.]\\w+$", Pattern.MULTILINE)),那么^$ 也会匹配行的开头和结尾。

【讨论】:

所以如果我理解正确,那么字符串“email@address.com.uk”与“\\w+@\\w+[.]\\w+”完美匹配,但不是“^\\ w+@\\w+[.]\\w+$"?但我已经在 java 中进行了测试,并且字符串在这两种情况下都失败了。我仍然没有看到明显的区别。你能根据我的情况显示分数吗? 您的正则表达式只允许在 @ 符号后添加一个点。试试^[\\w.]+@[\\w.]+\\.\\w+$。它仍然不完美(没有任何正则表达式可以匹配电子邮件地址),但它更宽容一些。 是的,根据您的回答,字符串“email@address.com.uk”将匹配“\\w+@\\w+[.]\\w+”,但不匹配“ ^\\w+@\\w+[.]\\w+$"。此代码: String s = "email@address.com.uk"; System.out.println(s.matches("\\w+@\\w+[.]\\w+")); => 错误 您是否仔细阅读了我的回答? Java 的 .matches() 为您的正则表达式隐式添加锚点!【参考方案2】:

试试 Javadoc:

http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html

^$ 匹配一行的开头/结尾(不消耗它们)

【讨论】:

以上是关于crontab表达式全*啥意思的主要内容,如果未能解决你的问题,请参考以下文章

crontab模式0 8是啥意思

正则表达式 (?<!-) 是啥意思

正则表达式 ^(\d1,2)$ 是啥意思? [复制]

这个调度器表达式 -> *~*~*~*~*/6~0~0 是啥意思?

正则表达式 \S 在 JavaScript 中是啥意思? [复制]

这个正则表达式是啥意思 - “\pLu”?