Mailinglist Archive: opensuse-de (5177 mails)

< Previous Next >
Re: Skript-Tip gesucht
  • From: Thomas Preissler <tomjohn@xxxxxx>
  • Date: Sat, 7 Jun 2003 11:53:21 +0200
  • Message-id: <20030607095321.GB4170@xxxxxxxxxxxx>
Hallo Matthias,

* Matthias schrieb am 07.06.2003:

[Thomas Preissler]:
Hallo Andreas,

* Andreas schrieb am 06.06.2003:
Tach Leute.

Ich möchte mit Hilfe eines Skripts die Papierkörbe meiner Nutzer
leeren. Nun könnte ich für jeden Nutzer eine Zeile anlegen:

cd /home/user1/Desktop/Trash && find . -ctime +5 -exec rm -rf {} \;
cd /home/user2/Desktop/Trash && find . -ctime +5 -exec rm -rf {} \;

usw.

Das ist nicht sehr praktisch. Wie kann ich diese Zeile wiederholt
ausführen lassen und dabei /home/userX/... der Reihe nach mit allen
Usern ersetzen, die im System angelegt sind, und die auch normale
Nutzer sind (also nicht root usw.)?

Ungetestet:


del="Desktop/Trash"
for home in $(awk -F: '{print $6}' /etc/passwd) ; do

Das dürfte ein wenig zu viele User erwischen und beim Löschen zu
Fehlermeldungen führen (Systemuser, root).

Wenn Du quotest, dann aber richtig:

del="Desktop/Trash"

for home in $(awk -F: '{print $6}' /etc/passwd) ; do

[ -d $home/$del ] && find $home/$del -ctime +5 -exec rm -rf {} \;

done


Das "[ -d ... ]" prüft dies.


Grüße,
Tom

< Previous Next >