Re: Wie kann man find in einem shellskript nur in Verzeichni…

Αρχική Σελίδα
Συνημμένα:
Μήνυμα σαν ηλεκτρονικό μήνυμα
+ (text/plain)
Delete this message
Reply to this message
Συντάκτης: Norman Zimmer
Ημερομηνία:  
Προς: Ralph Lindner
Υ/ο: LUSC Liste
Αντικείμενο: Re: Wie kann man find in einem shellskript nur in Verzeichnissen mit Berechtigung ausführen?
Hi,

find / ...
durchsucht ab dem Systemroot. Ich würde das deutlich einschränken.

find /opt/samba/ ...

Entspricht jetzt nicht exakt Deiner Frage, sollte aber die kopierte Fehlermeldung beseitigen.

LG Norman

--

Norman 'bigboss' Zimmer
GnuPG-ID: 0x1842A431

Packets don't lie, but they may not tell everything if captured by a misconfigured filter.

> Am 19.07.2019 um 19:07 schrieb Ralph Lindner <rl@???>:
>
> hallo LIste,
>
> mit folgendem "/etc/cron.daily/Papierkorb-leeren" lösche ich alten Müll
> aus meinen CIFS "Papierkörben":
>
> $cat Papierkorb-leeren
> #!/bin/sh
> # siehe
> https://agentur-lindner.com/2008/08/papierkorb-fur-windows-user-auch-mit-samba-server-freigabe/
> # Sämtliche Dateien in Verzeichnissen mit dem Namen ".Papierkorb" die
> älter sind als 14 Tage sollen gelöscht werden.
> # Diese Dateien sind mit Samba-Clients gelöschte Dateien (siehe smb.conf).
> # Zum Test des obigen Kommandos empfehle ich -exec durch -ok zu ersetzen
> – so muss man jedes Kommando bestätigen.
> find / -type f -wholename "*/.Papierkorb/*" -ctime +14 -exec rm "{}" \;
> find / -type f -wholename "*/Trash/*" -ctime +14 -exec rm "{}" \;
> # leere Papierkorbverzeichnisse werden ebenfalls gelöscht
> find / -depth -type d -empty -wholename "*/.Papierkorb/*" -exec rmdir
> "{}" \;
> find / -depth -type d -empty -wholename "*/Trash/*" -exec rmdir "{}" \;
>
> Das funktioniert auch ganz ordentlich. Das Problem ist nur, ich bekomme
> jedes mal eine Fehlermeldung, da auch die Verzeichnisse ohne
> Zugriffsberechtigung durchsucht werden. Hat jemand eine Idee, wie ich
> das ändern könnte? (2>/dev/null wäre die am wenigsten schöne
> Möglichkeit, krieg ich aber auch nicht hin)
>
> ...
> find: ‘/run/user/112/gvfs’: Keine Berechtigung
> find: ‘/proc/8273’: Datei oder Verzeichnis nicht gefunden
> run-parts: /etc/cron.daily/Papierkorb-leeren exited with return code 1
>
> Viele Grüße und Danke für Lösungsvorschläge
> Ralph
>
> --
> Mailing-Liste der Linux User Schwabach (LUSC) e.V.
> Vor und beim Posten bitte
> => http://lusc.de/List-Netiquette <= und
> => http://lusc.de/List-Howto <= beachten. Danke!
>


--
Mailing-Liste der Linux User Schwabach (LUSC) e.V.
Vor und beim Posten bitte
?http://lusc.de/List-Netiquette < und
?http://lusc.de/List-Howto < beachten. Danke!