uscrontab: support de l'option -G pour les tests
This commit is contained in:
parent
e58ff74d83
commit
b6b7fa94ca
|
@ -112,7 +112,9 @@ __CTRESOLVE_CTNOW=""
|
||||||
# eval "$(ctresolve <crontab)"
|
# eval "$(ctresolve <crontab)"
|
||||||
function ctresolve() {
|
function ctresolve() {
|
||||||
local -a ctnow
|
local -a ctnow
|
||||||
if [ -n "$__CTRESOLVE_CTNOW" ]; then
|
if [ "$__CTRESOLVE_CTNOW" == "**ANY**" ]; then
|
||||||
|
ctnow=("$__CTRESOLVE_CTNOW")
|
||||||
|
elif [ -n "$__CTRESOLVE_CTNOW" ]; then
|
||||||
eval "ctnow=($__CTRESOLVE_CTNOW)"
|
eval "ctnow=($__CTRESOLVE_CTNOW)"
|
||||||
else
|
else
|
||||||
eval "ctnow=($(ctnow))"
|
eval "ctnow=($(ctnow))"
|
||||||
|
@ -153,6 +155,8 @@ function ctmatch_one(ctval, ref, parts, part, i, j, start, end, ste
|
||||||
return ok
|
return ok
|
||||||
}
|
}
|
||||||
function ctmatch_all(M, H, dom, mon, dow, refM, refH, refdom, refmon, refdow, Mok, Hok, domok, monok, dowok) {
|
function ctmatch_all(M, H, dom, mon, dow, refM, refH, refdom, refmon, refdow, Mok, Hok, domok, monok, dowok) {
|
||||||
|
if (refM == "**ANY**") return 1
|
||||||
|
|
||||||
gsub(/\*/, "0-59", M)
|
gsub(/\*/, "0-59", M)
|
||||||
Mok = ctmatch_one(M, refM)
|
Mok = ctmatch_one(M, refM)
|
||||||
|
|
||||||
|
|
|
@ -285,7 +285,13 @@ OPTIONS AVANCEES
|
||||||
Pour le développement ou des tests, forcer la valeur de l'heure de
|
Pour le développement ou des tests, forcer la valeur de l'heure de
|
||||||
référence. Il faut respecter le format, sinon les résultats ne sont pas
|
référence. Il faut respecter le format, sinon les résultats ne sont pas
|
||||||
garantis. Le mieux est de reprendre le résultat de l'option --show-ctnow
|
garantis. Le mieux est de reprendre le résultat de l'option --show-ctnow
|
||||||
en le modifiant un peu si nécessaire."
|
en le modifiant un peu si nécessaire.
|
||||||
|
-G, --any-ctnow
|
||||||
|
Pour le développement ou des tests, lancer toutes les commandes dans
|
||||||
|
l'ordre sans tenir compte de l'heure de référence. Cette commande ne
|
||||||
|
devrait pas être utilisée en temps normal, mais elle existe pour
|
||||||
|
simplifier les tests avec --show-ctnow + --force-ctnow dans les cas
|
||||||
|
simples."
|
||||||
}
|
}
|
||||||
|
|
||||||
function set_usercrontabs() {
|
function set_usercrontabs() {
|
||||||
|
@ -361,6 +367,7 @@ parse_opts "${PRETTYOPTS[@]}" \
|
||||||
-k:,--stop: USCRONTAB_STOPEC= \
|
-k:,--stop: USCRONTAB_STOPEC= \
|
||||||
--show-ctnow action=show-ctnow \
|
--show-ctnow action=show-ctnow \
|
||||||
--force-ctnow: __CTRESOLVE_CTNOW= \
|
--force-ctnow: __CTRESOLVE_CTNOW= \
|
||||||
|
-G,--any-ctnow __CTRESOLVE_CTNOW="**ANY**" \
|
||||||
@ args -- "$@" && set -- "${args[@]}" || die "$args"
|
@ args -- "$@" && set -- "${args[@]}" || die "$args"
|
||||||
|
|
||||||
uscrontab="$1"; shift
|
uscrontab="$1"; shift
|
||||||
|
|
Loading…
Reference in New Issue