Comment tromper une commande particulière en lui faisant croire qu'il s'agit d'une date différente?

23

Comment puis-je exécuter une commande en lui faisant croire que la date est différente de celle du système?

Par exemple, si j'ai ce script:

#!/usr/bin/env bash    
date +"%B %d, %Y"

Il imprime la date réelle: march 13, 2014

Mais je voudrais qu'il imprime une date différente, sur le futur ou le passé, sans changer la date du système.

Si je n'étais pas assez clair, je veux un outil de ligne de commande comme cet outil GUI Windows .


Je ne veux pas utiliser un script différent (c'était juste un exemple).
Je ne veux pas définir de cronjob .
Je ne souhaite pas modifier la date générale de mon système.
Modifiez uniquement la date qui s'applique à la commande à exécuter.

Lucio
la source

Réponses:

23

L'utilisation du logiciel libfaketime pourrait être une solution

sudo apt-get install faketime
faketime '2006-09-20' wine Example.exe
Cristian Ciupitu
la source
ça a fait l'affaire sur le vin? j'ai testé uniquement sur des binaires natifs; cheers
Je viens de le tester avec Wine et j'ai eu des erreurs LD_PRELOAD sur libfaketime.so, j'ai donc trouvé un outil Windows appelé RunAsDate qui fonctionne avec Wine 1.6.2 et fait l'affaire: nirsoft.net/utils/run_as_date.html
Denis Fuenzalida