View previous topic :: View next topic |
Author |
Message |
AntonWert Apprentice
Joined: 06 Mar 2005 Posts: 177
|
Posted: Mon Nov 14, 2005 6:01 pm Post subject: Verzeichnisbaum löschen, mit Ausnahme |
|
|
Wie der Titel schon sagt, ich will einen kompletten Verzeichnisbaum löschen (z.B. /usr/portage/) - was ja rekursiv geht - aber dabei z.B. die Distfiles in /usr/portage/distfiles behalten, wie mach ich das? |
|
Back to top |
|
|
theche Guru
Joined: 26 Feb 2004 Posts: 512
|
Posted: Mon Nov 14, 2005 6:14 pm Post subject: |
|
|
mv sie vorher woanders hin. und dann wieder zurück. |
|
Back to top |
|
|
hoernerfranz Tux's lil' helper
Joined: 29 Feb 2004 Posts: 135 Location: Baden
|
Posted: Mon Nov 14, 2005 6:36 pm Post subject: |
|
|
oder so:
Code: |
cd /usr
find portage -type d -maxdepth 1 | grep "/" | grep -v distfiles | xargs ls -ld
|
die ausgabe zeigt dir dann was gelöscht würde, wenn du 'ls -ld' am schluss durch
'rm -rf' ersetzt.
ohne gewähr. |
|
Back to top |
|
|
SinoTech Advocate
Joined: 20 Mar 2004 Posts: 2579 Location: Neunkirchen / Saarland / Germany
|
Posted: Mon Nov 14, 2005 7:29 pm Post subject: |
|
|
hoernerfranz wrote: | oder so:
Code: |
cd /usr
find portage -type d -maxdepth 1 | grep "/" | grep -v distfiles | xargs ls -ld
|
die ausgabe zeigt dir dann was gelöscht würde, wenn du 'ls -ld' am schluss durch
'rm -rf' ersetzt.
ohne gewähr. |
Also wenn "find", dann doch so:
Code: |
$ find /usr/portage -maxdepth 1 ! -name "distfiles" -exec rm -rf {} \;
|
Mfg
Sino |
|
Back to top |
|
|
hoernerfranz Tux's lil' helper
Joined: 29 Feb 2004 Posts: 135 Location: Baden
|
Posted: Mon Nov 14, 2005 7:57 pm Post subject: |
|
|
Code: |
$ find /usr/portage -maxdepth 1 ! -name "distfiles" -exec rm -rf {} \;
|
mach das ruhig mal.
da haste dann /usr/portage selber als argument f. -exec .... |
|
Back to top |
|
|
SinoTech Advocate
Joined: 20 Mar 2004 Posts: 2579 Location: Neunkirchen / Saarland / Germany
|
Posted: Mon Nov 14, 2005 9:02 pm Post subject: |
|
|
hoernerfranz wrote: | Code: |
$ find /usr/portage -maxdepth 1 ! -name "distfiles" -exec rm -rf {} \;
|
mach das ruhig mal.
da haste dann /usr/portage selber als argument f. -exec .... |
Hast Reht .. dann klemmen wir halt noch ein "-mindepth" rein
Code: |
$ find /usr/portage/ -mindepth 1 -maxdepth 1 ! -name "distfiles" -exec rm -rf {} \;
|
Naja, die schönste Lösung ist das mit Sicherheit nicht, aber würde funktionieren.
Mfg
Sino |
|
Back to top |
|
|
Earthwings Bodhisattva
Joined: 14 Apr 2003 Posts: 7753 Location: Germany
|
Posted: Mon Nov 14, 2005 11:03 pm Post subject: |
|
|
SinoTech wrote: | hoernerfranz wrote: | Code: |
$ find /usr/portage -maxdepth 1 ! -name "distfiles" -exec rm -rf {} \;
|
mach das ruhig mal.
da haste dann /usr/portage selber als argument f. -exec .... |
Hast Reht .. dann klemmen wir halt noch ein "-mindepth" rein
Code: |
$ find /usr/portage/ -mindepth 1 -maxdepth 1 ! -name "distfiles" -exec rm -rf {} \;
|
Naja, die schönste Lösung ist das mit Sicherheit nicht, aber würde funktionieren. |
Sicher? Was ist mit evtl. Unterordnern von distfiles, bleiben die erhalten? Und was wäre, wenn distfiles kein direkter Unterordner von /usr/portage wäre? _________________ KDE |
|
Back to top |
|
|
hoernerfranz Tux's lil' helper
Joined: 29 Feb 2004 Posts: 135 Location: Baden
|
Posted: Tue Nov 15, 2005 7:13 am Post subject: |
|
|
Earthwings wrote: |
Sicher? Was ist mit evtl. Unterordnern von distfiles, bleiben die erhalten? |
klar, das ist ja der sinn der sache
der 'trick' besteht darin, nur die ordner in der ebene unter /usr/portage (mittels maxdepth) als argumente an -exec zu geben, ohne distfiles.
damit wird dieser ordner samt unterordnern ignoriert, die anderen aber rekursiv gelöscht.
Quote: |
Und was wäre, wenn distfiles kein direkter Unterordner von /usr/portage wäre? |
dann müsste man es anders machen ... |
|
Back to top |
|
|
Fauli l33t
Joined: 24 Apr 2004 Posts: 760 Location: Moers, Germany
|
Posted: Wed Nov 16, 2005 7:30 pm Post subject: |
|
|
Oder einfach so:
Code: | rm -r /usr/portage/!(distfiles) |
_________________ Do your part to beautify the web! Turn off link underlining! |
|
Back to top |
|
|
|