Ich versuche gerade verzweifelt eine kl. Schleife zu bauen, in der ich den Tag, Monat und das Jahr in einer Variable hochzähle und das für 7 Tage.
Dazu hab ich rausgefunden, dass ich z.B. mit 'date --date="1 days" +%d' das date befüttern kann. Allerdings läut das irgendwie nicht in meiner Schleife:
Hier mal mein Test Script:
Code: Alles auswählen
#!/bin/sh
COUNT=0
while [ ${COUNT} -lt 7 ]
do
# Datum ermitteln
CMD="date --date=\"${COUNT} days\" +%d"
echo $CMD
D=$($CMD)
echo $D
# $D=`date --date="$COUNT days" +%d`
# echo $D
#$M=`date --date="${COUNT} days" +%m`
#$Y=`date --date="${COUNT} days" +%Y`
COUNT=$(($COUNT+1))
done
Bei der 1. mit CMD kommt immer
Wenn ich dann aber den Inhalt von CMD manuell auf der Console ausführe, funktioniert es...date --date="0 days" +%d
date: zusätzlicher Operand „+%d“
„date --help“ gibt weitere Informationen.
date --date="1 days" +%d
date: zusätzlicher Operand „+%d“
„date --help“ gibt weitere Informationen.
date --date="2 days" +%d
date: zusätzlicher Operand „+%d“
„date --help“ gibt weitere Informationen.
date --date="3 days" +%d
date: zusätzlicher Operand „+%d“
„date --help“ gibt weitere Informationen.
date --date="4 days" +%d
date: zusätzlicher Operand „+%d“
„date --help“ gibt weitere Informationen.
date --date="5 days" +%d
date: zusätzlicher Operand „+%d“
„date --help“ gibt weitere Informationen.
date --date="6 days" +%d
date: zusätzlicher Operand „+%d“
„date --help“ gibt weitere Informationen.
Bei der zweiten (mit direkter Ausführung und Zuweisung) kommt:
Bin über jeden Tip dankbar../test.sh: line 14: =10: command not found
./test.sh: line 14: =11: command not found
./test.sh: line 14: =12: command not found
./test.sh: line 14: =13: command not found
./test.sh: line 14: =14: command not found
./test.sh: line 14: =15: command not found
./test.sh: line 14: =16: command not found
Gruß,
Thomas