was der Befehlt genau macht?
ich möchte Dir ja nicht zu nahe treten - aber Du führst einen von mir vorgeschlagenen Befehl, der noch dazu Files löscht einfach aus, ohne Dir VORHER genau angesehen zu haben, was er tut?
Ich kann Dich beruhigen: Ich habe den Befehl nach bestem Wissen und Gewissen formuliert - aber es soll ja auch Scherzbolde geben, die sich gern mal einen Spaß erlauben. Außerdem kann jedem mal ein Fehler passieren. Daher hätte es sich eventuell angeboten statt des "-exec rm {} \;" vorab mal mit einem "-exec echo {} \;" zu testen.
also, was tut dieses find nun:
Code:
find /srv/email/ -regex '.+/.Spam/new/.+' -mtime +7 -type f -exec rm {} \;
wir suchen alle Dateien ausgehend von /srv/email auf welche die oben angeführte regular Expression zutrifft, die vom Typ "f = regular file" sind und deren modification Time länger als 7 Tage in der Vergangenheit liegt. Für die gefundenen Dateien führen wir dann jeweils ein "rm" aus. Zum Testen empfiehlt es sich das "rm" durch ein unsprektakuläres "echo" zu ersetzen (dann passiert vorerst mal nicht mehr als eine Ausgabe der gefundenen Dateien).
die Regular Expression sucht in diesem rudimentären Beispiel lediglich nach:
.+ = irgend ein beliebiger String
/.Spam/new/ = der gewünschte Teilstring
.+ = danach wieder irgendwas beliebiges
Aber nochmals der Hinweis: Immer zuerst verstehen was man da tut, bevor man solche Dinge ungeprüft aus dem Web übernimmt!