我想创build一个命令, 只在当前时间在午夜和上午6点之间附加一个特定的参数。
示例伪代码:
mvn clean verify <#if isBetweenMidnightAnd6AM> -Dfindbugs.skip=false</#if>
有可能在单个命令行中构build它,还是需要一个shell脚本?
在这里,你几乎可以肯定用shell脚本更好。 你可以用这样一个非常非常丑陋的线来做:(注意:没有被试探/testing过)
mvn clean verify $( if [ ($(date +%H) -ge 0) && ($(date +%H) -le 6) ];then echo "-Dfindbugs.skip=false";fi;)
无论如何,脚本会容易得多。 它看起来像这样:
if [ ($(date +%H) -ge 0) && ($(date +%H) -le 6) ] then mvn clean verify -Dfindbugs.skip=false else mvn clean verify $Your_other_opts fi
另外,通过脚本,您可以更好地进行debugging和validation,以确保其正确运行。
也就是说,这似乎是不会手动运行的,所以你可以很简单地做一个cron工作,比如:
0 0-6 * * * mvn clean verify -Dfindbugs.skip=false
哪个会在凌晨0点(午夜) – 6点(6点)运行命令。