18.221.235.209 |    

Navigation

Google Advertisement

Diese Funktion reduziert oder erhöht das Datum um x Tage. Als Parameter benötigt die Funktion den Status (next/preview), welches das Datum vor bzw. zurück stellt, das Datum im Format YYYY-MM-DD und optional die Anzahl der Tage um welches das Datum erhöht bzw. reduziert wird.

setDate
  1. #!/bin/date
  2.  
  3. # *****************************************************************
  4. # Diese Funktion reduziert oder erhoeht das Datum um x Tage.
  5. # Als Parameter benoetigt die Funktion den status (next/preview), welches
  6. # das Datum vor bzw. zurueck stellt, das Datum im Format YYYY-MM-DD und
  7. # optional die Anzahl der Tage um welches das Datum erhoeht bzw.
  8. # reduziert wird. Ein Beispiel: ndate=$( setDate 'next' 2005-04-29 5 )
  9.  
  10. function setDate() {
  11.  
  12. local param=$1
  13. local date=$2
  14. local count=${3:-1}
  15. local index=0
  16.  
  17. while [ "$index" -lt "$count"  ]; do
  18.  
  19. 	# Datum in Jahr, Monat, Tag splitten...
  20. 	local days=$( echo $date | cut -d- -f3 )
  21. 	local mons=$( echo $date | cut -d- -f2 )
  22. 	local year=$( echo $date | cut -d- -f1 )
  23.  
  24. 	# Fuehrende 0 entfernen (zum rechnen)...
  25. 	days=$( echo $days | sed 's/^0//g' )
  26.  
  27. 	# Tag auf 0 setzen, wenn [days] kleiner/gleich 0 ist...
  28. 	[ "$days" -le 0 ] && days=0
  29.  
  30. 	# Tag rauf/runter zaehlen...
  31. 	[ "$param" = "next" ] && days=$[ $days+1 ] || days=$[ $days-1 ]
  32.  
  33. 	# wenn Tag unter 10 ist, wird mit einer 0 aufgefuellt...
  34. 	[ "$days" -lt 10 ] && days="0${days}"
  35.  
  36. 	# errechnete Datum setzen...
  37. 	date=$( echo -n $( date --date=$year-$mons-$days +%Y-%m-%d ) )
  38.  
  39. 	# Zaehler erhoehen...
  40. 	let index=$index+1
  41.  
  42. done
  43.  
  44. # Ausgabe...
  45. echo -n $date
  46.  
  47. }
Parsed in 0.002 seconds at 525.71 KB/s

Search
 
Full text search by name and content of a snippet.

User online
There are 2 users online.

Tags Cloud

Latest snippets
str2seconds
(Bash::Function)
is_integer
(Bash::Function)
file_rotate
(Bash::Function)
confirm
(Bash::Function)
is_workingtime
(Bash::Function)
last day of last month
(Bash::Snippets)
crypt_apr1_md5
(PHP::Function)
crypt_apr1_md5
(Perl::Function)
transparent
(CSS)
rfc2822Toiso8601
(PHP::Function)