datefudge (1) - Linux Manuals

datefudge: pretend the system time is different

NAME

datefudge - pretend the system time is different

SYNOPSIS

datefudge [-s|--static] at_date program [arguments ...]

DESCRIPTION

datefudge is a small utility that pretends that the system time is different by pre-loading a small library which modifies the time(2), gettimeofday(2) and clock_gettime(2) system calls.

DATE FORMAT

The at_date argument can be given in any format accepted by the date(1) program, for example "2007-04-01 12:21" or "yesterday", or "next Friday".

OPTIONS

--static, -s
Mark the date as a `static' one. The above mentioned system calls will always return the date given in the at_date argument, regardless of time passing. See EXAMPLES
 below.
--help, -h
Print short usage information and exit.
--version, -v
Print version information and exit.

EXAMPLES

Basic examples:

$ datefudge "2007-04-01 10:23" date -R
Sun, 01 Apr 2007 10:23:00 +0200

$ datefudge "1 May 2007" date -R
Tue, 01 May 2007 00:00:00 +0200

$ datefudge "2 weeks ago" date -R
Wed, 16 Jan 2008 13:32:12 +0100

Non-static vs. static example:

$ datefudge "2007-04-01 10:23" sh -c "sleep 3; date -R"
Sun, 01 Apr 2007 10:23:03 +0200

$ datefudge --static "2007-04-01 10:23" sh -c "sleep 3; date -R"
Sun, 01 Apr 2007 10:23:00 +0200

AUTHOR

Written by Matthias Urlichs <smurf [at] noris.de>. Modified by Robert Luberda <robert [at] debian.org>.

BUGS

There is no attempt to make this change undetectable by the program. In particular, file modification times are not modified.

COPYRIGHT

Copyright © 2003 by Matthias Urlichs.
Copyright © 2008-2016 by Robert Luberda.

There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. You may redistribute copies of datefudge under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.

SEE ALSO

date(1), ld.so(1), time(2), gettimeofday(2), clock_gettime(2)