So löschen Sie verstümmelte oder mit Sonderzeichen versehene Dateien in Linux

So löschen Sie verstümmelte oder mit Sonderzeichen versehene Dateien in Linux

Aus Kodierungsgründen werden beim Hochladen oder Erstellen chinesischer Dateien oder Verzeichnisse auf einem Linux-Server verstümmelte Zeichen generiert. Wenn Sie diese löschen möchten, können Sie sie nicht mit dem Befehl rm löschen. In diesem Fall können Sie den Befehl find verwenden, um die verstümmelten Dateien oder Verzeichnisse zu löschen.

Im Linux-Dateisystem hat jede Datei eine I-Node-Nummer und die Dateien können über die I-Node-Nummer verwaltet werden. Geben Sie zuerst das Verzeichnis ein, in dem sich die fehlerhafte Datei oder das fehlerhafte Verzeichnis befindet

Verwenden Sie den Befehl ls -i, um den Inode einer Datei oder eines Verzeichnisses zu finden.

Die numerische Zeichenfolge vor der Datei oder dem Verzeichnis ist der Inode. Verwenden Sie anschließend den Befehl „find“, um diese Datei oder dieses Verzeichnis abzufragen und zu löschen.

Hinweis: Diese Methode funktioniert nur zum Löschen von Dateien oder leeren Ordnern.

Wie lösche ich einen nicht leeren Ordner?

Überprüfen Sie zuerst den Inode und verwenden Sie dann den folgenden Befehl:

finde -inum 2236429 -exec rm -rf {} \;

Es wird angezeigt, dass die Datei oder der Ordner nicht gefunden werden kann, aber tatsächlich wurde er gelöscht.

So löschen Sie unter Linux Dateien mit fehlerhaften Zeichen oder Sonderzeichen im Dateinamen.

Ich habe heute ein Problem festgestellt. Eine Datei mit dem Namen “-MXV9.log ". Wenn ich sie direkt mit rm lösche, wird eine Fehlermeldung angezeigt.

[localhost]rm -MXV9.log
rm: illegale Option – M
rm: ungültige Option – X
rm: illegale Option – V
rm: illegale Option – 9
rm: unzulässige Option -- .
rm: illegale Option -- l
rm: unzulässige Option -- o
rm: unzulässige Option -- g
Verwendung: rm [-Rfir] Datei ...

Ich dachte zunächst über das Löschen mit Anführungszeichen nach, stellte jedoch fest, dass beim Löschen mit Anführungszeichen auch ein Fehler wegen einer illegal option gemeldet wurde.

Ich habe einige Informationen gefunden und festgestellt, dass diese Art von Datei wie folgt gelöscht werden kann

Suchen Sie zunächst mit ls -i den Inode der Datei und löschen Sie ihn dann mit dem Befehl find

[localhost]ls -ilrt

100985 -rw-r--r-- 1 tbcs Benutzer 0 18. April 11:32 -MXV9.log

Die 100985 in der ersten Spalte ist der Inode der Datei. Führen Sie den folgenden Befehl auf dem Host aus, um die Datei zu löschen

[localhost]finden ./ -inum 100985 -exec rm {} \;

Diese Methode eignet sich zum Löschen von Dateien mit fehlerhaften Zeichen oder Sonderzeichen.

Wenn der Dateiname beispielsweise „*.txt“ lautet und Sie rm *.txt direkt ausführen, werden alle Dateien im Ordner mit der Endung .txt gelöscht.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung zur Verwendung des Top-Befehls zur Analyse der Linux-Systemleistung
  • So verbessern Sie die Sicherheit von Linux- und Unix-Servern
  • Detaillierte Erklärung des Unterschieds zwischen chown- und chmod-Befehlen in Linux
  • Verwenden Sie die Befehle more, less und cat in Linux, um Dateiinhalte anzuzeigen
  • Erläuterung der Linux-Kernel-Optimierungskonfiguration für hochparallele Nginx-Server
  • So ändern Sie die Standardcodierung von MySQL in Linux
  • Einführung in die Verwendung und Deaktivierung von Transparent Huge Pages in Linux
  • Detaillierte Erläuterung zum Upgrade von Python und zur Installation von Pip unter Linux
  • So verwenden Sie eine for-Schleife in Kombination mit if, um Dateien im Linux-Shell-Verzeichnis zu finden
  • Linux-System zum Anzeigen von CPU, Maschinenmodell, Speicher und anderen Informationen

<<:  Details zur geplanten Datenbanksicherung und Datenwiederherstellung bei Navicat für MySQL

>>:  Videojs+Swiper realisiert Taobao-Produktdetailkarussell

Artikel empfehlen

So stellen Sie MySQL 5.7- und 8.0-Master-Slave-Cluster mit Docker bereit

> MySQL 5.7 Cluster Master und Slave bereitste...

Ändern Sie die Startzeit von Grub in Ubuntu

Die Online-Suche zum Ändern der Grub-Startzeit be...

Fabric.js implementiert DIY-Postkartenfunktion

In diesem Artikel wird der spezifische Code von F...

Verwenden von Schleifen in awk

Lernen wir verschiedene Arten von Schleifen kenne...

Die Prinzipien und Mängel der MySQL-Volltextindizierung

Der MySQL-Volltextindex ist ein spezieller Index,...

So ändern Sie das MySQL-Passwort auf dem XAMPP-Server (mit Bildern)

Heute habe ich bei der Arbeit an PHP herausgefund...

So löschen Sie den in Docker erstellten Container

So löschen Sie den in Docker erstellten Container...

Detailliertes Tutorial zur Verwendung von stimulsoft.reports.js mit vue-cli

vue-cli verwendet stimulsoft.reports.js (Tutorial...

Font Treasure House 50 exquisite kostenlose englische Schriftartenressourcen Teil 2

Designer verfügen über eine eigene Schriftartenbi...

Detaillierte Einführung in die Mysql-Datumsabfrage

Abfrage des aktuellen Datums AKTUELLES DATUM AUSW...

Implementierungscode für die teilweise Aktualisierung einer HTML-Seite

Aktualisierung der Ereignisantwort: Aktualisierun...

Nicht standardmäßiger Implementierungscode für die MySQL UPDATE-Anweisung

Heute werde ich Ihnen einen Unterschied zwischen ...