[linux-l] Dateien finden, die genau am Tag YYYY-MM-DD veraendert wurden
Peter Ross
Peter.Ross at alumni.tu-berlin.de
Mi Mai 9 07:56:47 CEST 2007
On Wed, 9 May 2007, Jan-Benedict Glaw wrote:
> On Wed, 2007-05-09 15:10:07 +1000, Peter Ross <Peter.Ross at alumni.tu-berlin.de> wrote:
> Wird vermutlich nicht funktionieren, weil -exec eben etwas erwartet,
> das man exec'en kann. Das wird bei einer Funktion nicht gehen. Man
> könnte natürlich ein längeres sh -c .... Konstrukt daraus machen...
Stimmt.
#!/bin/sh
# echo_datei_dieses_tages.sh
# Parameter: $1 Datum, $2 File
morgens=`date -d $1 +%s`
abends=`echo ${morgens}+86400 | bc`
alter=`stat -c %Y $2`
if [ ${morgens} -le ${alter} ]; then
if [ ${abends} - gt ${alter} ]; then
echo $2
fi
fi
# Parameter $1 Datum, $2 Pfad
find $2 -type f -exec echo_datei_dieses_tages.sh ${} \;
Die Schaltsekunde spar ich mir jetzt mal;-) Weiss ehrlich gesagt nicht
mal, wie Unix/Linux das handhabt.. und ob epoch das beruecksichtigt (eher
nicht?)
Du darfst Dir auch gern noch Gedanken ueber kaputte Parameter, Leerzeichen
(Stichwort find -print0 und xargs) und Locale machen.. War auch nur als
Gedankenschnipsel gedacht - Perfektion gegen huebsche Zahlen auf einem
Scheck;-)
Gruss
Peter
Mehr Informationen über die Mailingliste linux-l