Datum / Gestern Problem


Shell Variante:

Es gibt mehrere Möglichkeiten an das Datum von gestern zu kommen. Entweder über Shell, Perl, tcl, phyton usw. Am liebsten ist mir Perl und Shell. Wobei die Shell Variante nicht auf jedem Unixsystem funktionieren. Perl hat den Vorteil, dass es auf jedem Unix bzw Linux installiert ist und dadurch auch funktioniert.

date --date 'yesterday'
date --date '1 day ago'

Perl Variante

Doch dar mir Perl lieber ist, weil es Platformunabhängig ist und ich gleich mehere Tage zurücksteigen kann, empfehle ich dieses kleine Script. Dieses Script einfach mit "perl date.pl 3" ausführen. Wobei date.pl der Name vom script ist und 3 die Anzahl von Tagen, die ich zurücksteigen will. Wenn als Argument 0 mitgegeben wird bekommt man das heutige Datum.

#/usr/bin/perl

use strict;
my $arg = (@ARGV[0]);
my ($day,$mon,$year) = (localtime(time()-$arg*86400))[3,4,5];
$year += 1900;
$mon += 1;

if ($mon < 10){
  $mon = "0$mon";
} 
if ($day < 10){
  $day = "0$day";
} 
print "$day-$mon-$year\n";