Come ingannare un comando particolare nel pensare che sia una data diversa?


23

Come posso eseguire un comando facendogli credere che sia in una data diversa da quella di sistema?

Ad esempio, se ho questo script:

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

Stampa la data effettiva: march 13, 2014

Ma vorrei che stampasse una data diversa, sul futuro o sul passato, senza cambiare la data del sistema.

Se non fossi abbastanza chiaro, voglio uno strumento da riga di comando come questo strumento GUI di Windows .


Non voglio usare uno script diverso (era solo un esempio).
Non voglio impostare un cronjob .
Non voglio cambiare la mia data di sistema generale.
Modifica solo la data applicabile al comando da eseguire.

Risposte:


23

L'uso del software libfaketime potrebbe essere una soluzione

sudo apt-get install faketime
faketime '2006-09-20' wine Example.exe

ha fatto il trucco sul vino? ho testato solo su binari nativi; salute

L'ho appena provato con Wine e ho riscontrato errori LD_PRELOAD su libfaketime.so, quindi ho trovato uno strumento Windows chiamato RunAsDate che funziona con Wine 1.6.2 e fa il trucco: nirsoft.net/utils/run_as_date.html
Denis Fuenzalida
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.