OT: anwendungsproblem viele dateien löschen
Hallo Liste! Ich habe mich entschlossen, selbst compilierte Programme auf dem Server unter /usr/local zu speichern. Dieses wird über nfs gemountet. Nun brauche ich die gleichen Dateien auf den Clienten unter /usr nicht mehr. Die möchte ich löschen. Habe bis jetzt folgenden Befehl: find /usr/local | awk '{ gsub(/local/,/); print }' Damit werden also alle Dateien und Verzeichnisse Zeilenweise aufgelistet, und /local im Pfad entfernt. Nun weis ich nicht weiter. Ich möchte Zeilenweise überprüfen, ob die jeweilige Resource existiert. Wenn ja soll überprüft werden, ob es sich um eine Datei oder ein Verzeichnis handelt. Wenn es eine Datei ist, soll diese gelöscht werden. Danach wäre eigentlich noch schön, wenn leere Verzeichnisse gelöscht würden, aber das könnte man dann ja per Hand machen. Wie (mit welchen Werkzeugen) ist das möglich? Ich glaube, awk kann Dateien nicht löschen. mit system() gehts auch irgendwie nicht. Vielen Dank für die Hilfe Patrick Hornung -- Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: OT: anwendungsproblem viele dateien löschen
On Wed, 04 Sep 2002, Patrick Hornung wrote: Ich habe mich entschlossen, selbst compilierte Programme auf dem Server unter /usr/local zu speichern. Dieses wird über nfs gemountet. Nun brauche ich die gleichen Dateien auf den Clienten unter /usr nicht mehr. Die möchte ich löschen. Habe bis jetzt folgenden Befehl: find /usr/local | awk '{ gsub(/local/,/); print }' Damit werden also alle Dateien und Verzeichnisse Zeilenweise aufgelistet, und /local im Pfad entfernt. Nun weis ich nicht weiter. Ich möchte Zeilenweise überprüfen, ob die jeweilige Resource existiert. Wenn ja soll überprüft werden, ob es sich um eine Datei oder ein Verzeichnis handelt. Wenn es eine Datei ist, soll diese gelöscht werden. for i in `find /usr/local -type f | awk '{ gsub(/local/,/); print }'`; do if [ -f $i ]; then echo Ich lösche jetzt $i fi done Danach wäre eigentlich noch schön, wenn leere Verzeichnisse gelöscht würden, aber das könnte man dann ja per Hand machen. for i in `find /usr/local -type d | awk '{ gsub(/local/,/); print }'`; do if [ -d $i ]; then if [ `echo $i/*` = $i/* ]; then echo Ich lösche jetzt $i fi fi done *!!Achtung!!* Dieses Ungetüm erkennt leider nicht ob noch Dot-Files (z.B.: .bla) in den Ordnern sind. Und mit Sicherheit gibt's noch smartere Lösungen um herauszufinden ob ein Ordner leer ist! Gruß, Markus PS.: Vorsicht mit dem Zeugs da oben ... ;-) -- Vi is to Emacs as masturbation is to making love: effective and always available but probably not your first choice. msg17819/pgp0.pgp Description: PGP signature
Re: OT: anwendungsproblem viele dateien löschen
On Wed, Sep 04, 2002 at 05:34:51PM +0200, Patrick Hornung wrote: Hallo Liste! Ich habe mich entschlossen, selbst compilierte Programme auf dem Server unter /usr/local zu speichern. Dieses wird über nfs gemountet. Nun brauche ich die gleichen Dateien auf den Clienten unter /usr nicht mehr. Die möchte ich löschen. Habe bis jetzt folgenden Befehl: find /usr/local | awk '{ gsub(/local/,/); print }' Damit werden also alle Dateien und Verzeichnisse Zeilenweise aufgelistet, und /local im Pfad entfernt. Nun weis ich nicht weiter. Ich möchte Zeilenweise überprüfen, ob die jeweilige Resource existiert. Wenn ja soll überprüft werden, ob es sich um eine Datei oder ein Verzeichnis handelt. Wenn es eine Datei ist, soll diese gelöscht werden. find /usr/local | sed 's#/local/#/#' | while read file ; do [ -f $file ] rm $file ;done Danach wäre eigentlich noch schön, wenn leere Verzeichnisse gelöscht würden, aber das könnte man dann ja per Hand machen. find /usr -type d -links 2 | xargs rmdir tschazu erkan -- ueber den grenzen muss die freiheit wohl wolkenlos sein -- Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: OT: anwendungsproblem viele dateien löschen
On Thu, 05 Sep 2002, erkan yanar wrote: On Wed, Sep 04, 2002 at 05:34:51PM +0200, Patrick Hornung wrote: Danach wäre eigentlich noch schön, wenn leere Verzeichnisse gelöscht würden, aber das könnte man dann ja per Hand machen. find /usr -type d -links 2 | xargs rmdir Trifft das nicht auf alle Verzeichnisse zu ?? Gruß, Markus -- Windows95: win-doz-nin-te-fiv n. 32 bit extensions and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company, that can't stand 1 bit of competition. msg17843/pgp0.pgp Description: PGP signature
Re: OT: anwendungsproblem viele dateien löschen
Hi Markus, Markus Hubig wrote: On Thu, 05 Sep 2002, erkan yanar wrote: On Wed, Sep 04, 2002 at 05:34:51PM +0200, Patrick Hornung wrote: Danach wäre eigentlich noch schön, wenn leere Verzeichnisse gelöscht würden, aber das könnte man dann ja per Hand machen. find /usr -type d -links 2 | xargs rmdir Trifft das nicht auf alle Verzeichnisse zu ?? Ja. Aber rmdir kann man da trotzdem benutzen weil rmdir bei nichtleeren Verzeichnissen meckert und nichts macht... Grüße Rene -- .''`. Rene Engelhard -- Debian GNU/Linux Developer : :' : http://www.debian.org | http://people.debian.org/~rene/ `. `' [EMAIL PROTECTED] | GnuPG-Key ID: 248AEB73 ü- Fingerprint: 41FA F208 28D4 7CA5 19BB 7AD9 F859 90B0 248A EB73 msg17845/pgp0.pgp Description: PGP signature
Re: OT: anwendungsproblem viele dateien löschen
On Thu, Sep 05, 2002 at 02:00:05AM +0200, Markus Hubig wrote: On Thu, 05 Sep 2002, erkan yanar wrote: On Wed, Sep 04, 2002 at 05:34:51PM +0200, Patrick Hornung wrote: Danach wäre eigentlich noch schön, wenn leere Verzeichnisse gelöscht würden, aber das könnte man dann ja per Hand machen. find /usr -type d -links 2 | xargs rmdir Trifft das nicht auf alle Verzeichnisse zu ?? Nur auf die ohne Unterverzeichnis. Bin davon ausgegangen, daß via des ersten Befehles die Verzeichnisse keine Dateien mehr enthalten. tschazu erkan -- ueber den grenzen muss die freiheit wohl wolkenlos sein -- Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)