Utilisation de la date de Bash, je peux le faire retourner un jour de la semaine par rapport à l'heure actuelle.
# Should return 2 days before the Sunday before Feb. 1, 2012 date --d='Sunday before 02/1/2012 - 2 days'
3 Réponses :
Bien avec BASH, il peut être fait avec une certaine boucle (par exemple, obtenir la date à laquelle vous souhaitez utiliser comme référence dans une variable dans UNIX% S Format que celui de la décrémentation avec 24 * 60 * 60 Vérifier si son dimanche et l'imprimez-la. Si c'est vrai ...)
ou vous pouvez configurer quelque chose comme celui-ci avec Vous pouvez le voir en action ici . Presque. Comme ideone (que j'adore) n'autorise pas les variables de ligne de commande de passage à Si vous souhaitez que vous puissiez convertir ce qui précède en un awk code> p> GAWK code> (ou i était paresseux de le comprendre ;-)), je devais les intégrer au bloc code> Begin code> aussi. p> datecalc.awk code> (avec ! # / usr / bin / gawk -f code> script qui utilise argv [n] code> variables au lieu de -v Code> Fourni pour que vous puissiez l'appeler facilement à partir de vos scripts shell. p> p>
Vous pouvez utiliser un petit nombre de jours arithmétique: résultat: p>
Ceci est assez facile à faire si vous avez libfaketime installé.
$ FAKETIME=$(FAKETIME='2012-02-01 00:00:00' date --d="last sunday" '+%Y-%m-%d %H:%M:%S') date --d="-2 days" Fri Jan 27 00:00:00 EST 2012