fastix®: Linux: Dateien löschen (zu viele)

Beitrag lesen

Moin!

Du hast also Rechte am Verzeichnis, aber keine Schreibrechte an den Dateien.

vor deiner Antwort bin ich auf die glorreiche Idee gekommen, die do- Schleife als root auszuführen.

Das ist quasi die ideale Idee um bei einem Fehler das gesamte System zu zerstören.

Wenn Du Root werden kannst, dann kannst Du auch zum Eigentümer der Datei werden oder deren Rechte neu setzten

Variante 1:
Das Kommando yes sendet ein y oder den als Argument übergeben String. Das ist spaßig, weil ein yes no bis zum Abbruch mit STRG+C immer zu "no" sendet. Du kannst aber das y durch eine Pipe umleiten:

for i in `ls -1`; do  
   yes | rm $i;  
done

Bessere Variante 2:

in der Hilfe zum Befehl  rm (man 1 rm) steht
-f, --force  Ignorieren nicht vorhandener Dateien, keine Nachfragen.

Theoretisch könnte eine Datei mit einem '-' oder zweien davon beginnen ('--') oder deren Name nur so ('-', '--') lauten. Dann soll die Variante gewählt werden dass ein '--' als "letzte Option" gesetzt wird, was danach folgt wird immer als Parameter (hier Dateinamen) behandelt. Bei unbekannten Dateinamen die ein führendes '-' enthalten können ist das "erste Bürgerpflicht".

Mein Vorschlag also:

for i in `ls -1`; do  
   rm --force -- $i;  
done

MFFG (Mit freundlich- friedfertigem Grinsen)

fastix