Am nächsten dran war ich mit
# rm /path/to/directory/*.*
aber das funktioniert nicht für Dateien, die keine Erweiterung haben...
Linux verwendet keine Erweiterungen. Es ist Sache des Erstellers der Datei, zu entscheiden, ob der Name eine Erweiterung haben soll. Linux schaut sich das 1. Byte an, um herauszufinden, mit welcher Art von Datei es zu tun hat.
Um alles in einem Verzeichnis zu entfernen, verwenden Sie:
rm /path/to/directory/*
Sie können die Option -r
verwenden, zum Beispiel:
rm -r /Pfad/zum/Verzeichnis/*
um auch alle Unterverzeichnisse (mit ihrem gesamten Inhalt) innerhalb des Verzeichnisses, dessen Inhalt Sie entfernen, zu löschen. Andernfalls wird eine Fehlermeldung angezeigt, die Sie darüber informiert, dass das Verzeichnis nicht entfernt wird.
Wenn Sie nur Dateien in /pfad/zu/verzeichnis löschen wollen, können Sie Folgendes tun
find /path/to/directory -type f -print0| xargs -0 rm
oder
find /path/to/directory -type f -exec rm '{}' \;
Der Vorteil ist, dass Sie auflisten können, was gefunden wurde, ohne es an rm
weiterzuleiten, so dass Sie sehen können, was gelöscht werden wird, bevor Sie beginnen.
Wenn Sie auch alle Unterverzeichnisse und das Verzeichnis selbst entfernen wollen, können Sie rm -rf /pfad/zum/verzeichnis
verwenden. Überprüfen Sie aber immer Ihre Zeile, bevor Sie die Eingabetaste drücken, rm -rf
kann auch eine Menge Chaos verursachen, z.B. wenn Sie versehentlich ein Leerzeichen nach dem ersten Schrägstrich einfügen, obwohl Sie Superuser-Rechte haben...