Expression Cron: différence entre 0/1, 1/1 et *

15

Dans une expression cron, quelle est la différence entre 0/1, 1/1et *?

sdabet
la source
Le /pas est très bien expliqué ici: publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp?topic=/…
NickW
1
Pourquoi le vote négatif, s'il vous plaît? Des informations manquantes? La question appartient-elle à un autre site stackexchange?
sdabet
Passez la souris sur la flèche vers le bas; la fenêtre contextuelle indique " Cette question ne montre aucun effort de recherche; elle n'est pas claire ou n'est pas utile ". Les votes négatifs sans commentaire peuvent être présumés être pour au moins une de ces raisons - bien que je note que le downvoter s'est rétracté depuis.
MadHatter
Merci @MadHatter, je n'ai pas encore assez de réputation pour voir les détails du vote
sdabet

Réponses:

20

Cela dépend de l'emplacement des termes

  • 0/1 signifie commencer à 0 tous les 1.
  • 1/1 signifie commencer à 1 tous les 1.
  • * signifie toutes les valeurs possibles.

donc

  • Pour les colonnes minutes, heures et jour de la semaine, le 0/1et *sont équivalents car ils sont basés sur 0.

  • Pour les colonnes Jour du mois et Mois 1/1et *sont équivalentes car elles sont basées sur 1.

user9517
la source
Cela a-t-il un sens à utiliser 0/1pendant des mois alors? Ce qui se passerait?
sdabet
4

Dans la définition de crontab, la signification des cinq champs date / heure est:

  1. À quelles minutes de l'heure (donc de 0 à 59)
  2. À quelle heure de la journée (donc de 0 à 23)
  3. À quel jour du mois (donc du 1 au 31)
  4. À quel mois de l'année (donc de 1 à 12 ou noms - jan, fév, ...)
  5. A quel jour de la semaine (donc de 0 à 6 ou noms - dim, lun, ...)

Un * signifie du premier au dernier élément de la plage. Un n / x signifie commencer à n, à chaque valeur x.

Dans votre cas, cela peut se traduire par:

  1. Aux minutes 0
  2. À partir de minuit, toutes les heures (ce qui est similaire à *)
  3. Chaque jour du mois
  4. À partir du premier mois (janvier), chaque mois (qui est similaire à *)
  5. Chaque jour de la semaine (pour le premier *)

La fin semble incorrecte (? *) Car elle se trouve à la place de la commande. Ou à la place du nom d'utilisateur et de la commande s'ils sont extraits d'un fichier sous /etc/cron.d/et non de la crontab d'un utilisateur spécifique.

Benoit
la source
0

Le 0/1 signifie toutes les 1 min ou chaque mintue et 1/1 signifie chaque mois je pense, mais je ne suis pas sûr que cela fonctionnera de cette façon pendant le mois.

vic
la source
Quelle est alors la différence entre 0/1, 1/1et *?
sdabet
Le 0/1 est en position heure.
user9517
celui-là est pour l'heure
vic
Bien sûr, mais puis-je remplacer la partie horaire 0/1par 1/1exemple? Est-ce que cela signifiera la même chose?
sdabet
N'est-ce pas la même chose que mettre 0ou 1alors?
sdabet