Okay, ich habe die Probleme endlich gelöst. Es lag an den Dateisystemfehlern, die ls verursachen falsch angezeigt werden und andere Dienstprogramme nicht richtig funktionieren.
Es tut mir leid, dass der Titel der Frage irreführend ist (obwohl es tatsächlich viele Dateien in u/ gibt , ist das Verzeichnis nicht extrem groß ).
Ich habe das Problem gelöst, indem ich einen Live-USB verwendet habe, da das beschädigte Dateisystem / ist . Die Lösung bestand einfach darin, sudo fsck -cfk /dev/sda2 anzuwenden wobei dev/sda2 ist die beschädigte Festplatte.
Sie können mit rm keine großen Mengen an Dateien entfernen . Sie können beides tun
find u/ -type f -print0 | xargs -r -0 rm -f
dadurch werden nur Dateien gelöscht; Um alles zu löschen, verwenden Sie
find u/ -print0 | xargs -r -0 rm -rf
Sie können wahrscheinlich den --delete verwenden Option von find , wenn Ihr System es hat:
find u/ -type f --delete
oder die funky Methode mit rsync :
mkdir emptyfolder
rsync -r --delete emptyfolder/ u/
rsync ist viel schneller als rm beim Löschen von Dingen, da dadurch einige Prüfungen umgangen werden.
Sie können find /u -type f | while read f; do rm -f $f; done versuchen Das dauert eine Weile, könnte aber funktionieren. Aus irgendeinem Grund funktionieren Schleifen in Bash gut, wenn andere Ansätze versagen.