In Textdatei aufgelistete Dateien löschen

B

berland

Aktives Mitglied
Thread Starter
Dabei seit
27.06.2004
Beiträge
131
Reaktionspunkte
1
Hallo,

wie kann ich alle Dateien, die in einer Textdatei Zeile für Zeile aufgelistet sind, löschen? Das sollte doch mit einem 3-zeiligen Shell-Script zu bewerkstelligen sein, wenn man Ahnung davon hat, oder? :)

Der Hintergrund ist, dass ich das MacTex-Paket deinstallieren möchte, das leider den ganzen Kram in /usr/local/ installiert hat. Die einzige Lösung, die mir einfällt, ist die Liste der zu installierenden Dateien, wie man sie sich bei der Paketinstallation anzeigen lassen kann, in oben genannter Weise abzuarbeiten.
 
Code:
cat alle_dateien.txt | perl -e "while ( <STDIN>) { chomp(\$_) and unlink \$_; }"
 
Zuletzt bearbeitet:
berland schrieb:
Hallo,

wie kann ich alle Dateien, die in einer Textdatei Zeile für Zeile aufgelistet sind, löschen? Das sollte doch mit einem 3-zeiligen Shell-Script zu bewerkstelligen sein, wenn man Ahnung davon hat, oder?
Wenn du weisst, was du tust und die Dateien mit absoluten Pfaden in der Datei stehen:
Code:
#!/bin/sh
for i in $(cat DateiMitDenDateien) ; do
    rm $i
done

Ansonsten noch den Pfad definieren und den mit reinpacken:

Code:
#!/bin/sh
loeschpfad='/usr/local/bin'

for i in $(cat DateiMitDenDateien) ; do
    rm $loeschpfad/$i
done

Gruss von IceHouse
 
Vielen Dank für eure Hilfe.
 
berland schrieb:
wie kann ich alle Dateien, die in einer Textdatei Zeile für Zeile aufgelistet sind, löschen? Das sollte doch mit einem 3-zeiligen Shell-Script zu bewerkstelligen sein, wenn man Ahnung davon hat, oder? :)

xargs rm < liste.txt

...die fehlenden zwei Zeilen musst Du dir selbst ausdenken. :)

Gruß,
Jörg
 
Zurück
Oben Unten