
In meinem Papierkorb befindet sich eine seltsame Datei, die nicht verschwindet, wenn ich den Papierkorb leere. Der Dateiname sieht folgendermaßen aus:
␀␀␀õ␀␀.õ␀
Die Datei befindet sich anscheinend in /Volumes/NO NAME/.Trashes/501/ („NO NAME“ ist mein Bootcamp-Windows-Volume, daher bin ich mir nicht einmal sicher, warum es ein .Trashes-Verzeichnis hat. Wenn ich versuche, diese Datei oder sogar dieses Verzeichnis mit „ls“ zu versehen, erhalte ich:
ls: \004␀␀␀õ\001␀␀.õ\001␀: File name too long
Dasselbe passiert, wenn ich „sudo ls -le“, „sudo ls -la“ oder „sudo ls -i“ versuche.
Und ähnliche Ergebnisse, wenn ich versuche, es mit rm oder sogar „find . -type f -print0 | sudo xargs -0 rm“ zu verwenden.
Wie kann ich es loswerden?
Antwort1
Diese Personhatte das gleiche Problem und habe es durch eine Datenträgerprüfung in Windows behoben.
Antwort2
Sie könnten beispielsweise versuchen, niedrigere Aufrufe als ls zu verwenden, um das Verzeichnis aufzulisten.
python -c 'import os; print repr(os.listdir("/Volumes/NO NAME/.Trashes/501/"))'
und wenn das funktioniert, versuchen Sie vielleicht die unlink()
Funktion
bearbeiten: um die Verknüpfung aufzuheben, versuchen
python -c 'import os; os.unlink("/Volumes/NO NAME/.Trashes/501/\x04\xe2\x90\x80\xe2\x90\x80\xe2\x90\x80o\xcc\x83\x01\xe2\x90\x80\xe2\x90\x80.o\xcc\x83\x01\xe2\x90\x80")'
Antwort3
Haben Sie versucht, nach Inode zu löschen?
ls -i
zeigt die Dateien und ihre Inode-Nummern an
$ ls -i *.log
694197 alf.log 694719 mb.log
694181 fsck_hfs.log 24190 secure.log
802696 hdiejectd.log 694195 system.log
1094966 install.log 694396 windowserver.log
24189 ipfw.log
Verwenden Sie dann „Find“, um nach Inode zu entfernen (sagen wir, ich wollte mb.log von oben löschen):
find . -inum 694719 -exec rm {} \;
Antwort4
Sie könnten versuchen, Windows zu starten und zu prüfen, ob die Datei gelöscht werden kann (vorausgesetzt, sie wird überhaupt angezeigt).