Bash: Alle Tage in einem Datumsbereich ausgeben

By dose | April 4, 2007
Under: technical stuff, Uncategorized

Nur weil ich es heute in der Arbeit gebraucht habe, aber auf die Schnelle keine brauchbare Lösung gefunden habe: Mit GNUdate funktioniert das Ganze relativ einfach:


DAT_FROM=20060101 # Starting date
DAT_TO=20060228 # End date

DAYS=$((($(date +%s --date $DAT_TO)-$(date +%s --date $DAT_FROM))/86400))
STARTDATE=`date --date="$DAT_FROM" +%Y-%m-%d`

for i in $(seq 0 $DAYS); do
  date --date="$STARTDATE + $i days" +%Y%m%d
done

Sonst muss man die Datumskalkulationen selbst durchführen. Hierfür gibt es ein ganz praktisches Script:
http://www.unix.com/showthread.php?s=&postid=16559

Leave a Comment

Name:

E-Mail :

Subscribe :
Website :

Comments :