Heim >System-Tutorial >LINUX >Mehrere Möglichkeiten zum Löschen spezieller Dateinamen unter Linux

Mehrere Möglichkeiten zum Löschen spezieller Dateinamen unter Linux

WBOY
WBOYnach vorne
2024-02-12 09:20:221111Durchsuche

Das Linux-Betriebssystem bietet leistungsstarke Befehlszeilentools wie den Befehl rm, mit dem Dateien und Verzeichnisse gelöscht werden können. Einige Dateien sind jedoch speziell benannt und können mit dem normalen Befehl rm möglicherweise nicht gelöscht werden, was vielen Linux-Benutzern Probleme bereitet. In diesem Artikel stellen wir verschiedene Möglichkeiten zum Entfernen spezieller Dateinamen vor, damit Sie mit diesen lästigen Dateien problemlos umgehen können.

Mehrere Möglichkeiten zum Löschen spezieller Dateinamen unter Linux

Linux-Dateibenennungsregeln

Vor der Einführung erklären wir kurz die Dateibenennungsregeln unter Linux. Ein Datei- oder Verzeichnisname besteht aus anderen Zeichen als „/“ und dem Nullzeichen „

Geben Sie beim Löschen den Pfad ein

Angenommen, es gibt eine Datei mit dem Namen -static. Wir löschen sie mit der normalen Methode:

$ rm -static
rm: invalid option -- 's'
Try 'rm ./-static' to remove the file '-static'.
Try 'rm --help' for more information.

Es ist schade, dass diese Methode einen Fehler auslöst und die -static-Datei nicht erfolgreich löschen kann. Warum ist das so? Wir wissen, dass es unter Linux normalerweise mit - gefolgt von einigen Zeichen als Befehlsoption beginnt. Leider wird -static vom Befehl rm als Parameteroption betrachtet. Leider gibt es keine solche Option , sodass möglicherweise die ungültige Option „s“ angezeigt wird, was dazu führt, dass die Datei „-static“ nicht gelöscht werden kann.

Gibt es also eine Möglichkeit, es zu löschen? Wir haben zusätzlich zur Eingabe illegaler Optionen auch versucht, rm ./-static zu verwenden:

$ rm ./-static
$

Endlich wurde festgestellt, dass wir die -static-Datei erfolgreich gelöscht haben. So erhalten wir unsere erste Methode, die darin besteht, die Datei mit dem Pfad zu löschen.

Beim Löschen verwenden –

Zusätzlich zur Aufforderung, rm ./-static zu verwenden, haben wir uns auch gebeten, rm –help zu verwenden, um weitere Informationen zu erhalten, also werfen wir einen Blick darauf:

$ rm --help
(省略部分内容)
To remove a file whose name starts with a '-', for example '-foo',
use one of these commands:
  rm -- -foo
  rm ./-foo
(省略部分内容)

Es gibt viele Inhalte, aber Sie können den oben genannten Inhalt bemerken. Für Dateien, die mit - beginnen, stehen zwei Löschmethoden zur Verfügung. Die zweite ist die oben erwähnte und die zweite ist das Hinzufügen von - vor dem gelöschten Datei. :

$ rm -- -static
$

Wir haben festgestellt, dass diese Methode auch Dateien löschen kann, die mit - beginnen.

Verwenden Sie beim Löschen Anführungszeichen

Wie lösche ich Dateien, die aus Sonderzeichen wie !* bestehen? Zum Beispiel:

$ rm \!*
rm: missing operand
Try 'rm --help' for more information.

Für diesen Dateityp müssen wir den Dateinamen in Anführungszeichen setzen:

$ rm "\!*"
$

Sie können es auf diese Weise löschen, aber diese Methode kann nicht für alle Dateien dieses Typs verwendet werden. Beispielsweise können Dateien mit dem Namen !* nicht auf diese Weise gelöscht werden, da !* andere Bedeutungen hat Kennen Sie die Ausrufeverwendung von „!“ unter Linux?

Fügen Sie Escape-Zeichen hinzu, um Dateien zu löschen

Da !* nicht durch Anführungszeichen gelöscht werden kann, gibt es eine andere Möglichkeit, beim Löschen Escape-Zeichen hinzuzufügen:

$ rm \!*
$

Auf diese Weise können Sie es löschen. Unter Linux haben viele Zeichen eine besondere Bedeutung. Wenn Sie sie also als normale Zeichen verwenden müssen, müssen Sie ihnen ein Escape-Zeichen voranstellen, das dem Escape-Zeichen in der C-Sprache ähnelt. Als weiteres Beispiel können Sie zum Löschen von ABC-Dateien, die mit einem Leerzeichen beginnen, die folgende Methode verwenden:

$ rm \ abc
$

Es wird erfolgreich gelöscht.

Entsprechend der Knotennummer löschen

Oft können Dateinamen überhaupt nicht eingegeben werden, weil es sich dabei um eine Ansammlung verstümmelter Zeichen handelt. Daher ist es völlig unmöglich, sie mit der oben vorgestellten Methode zu löschen. Ja!

Zum Beispiel:

$ ls -i #找到乱码文件的i节点号
1703907 ç¼?ç¨?ç? ç??é«?æ¸?pdfç??.pdf
$ find ./ -inum 1703907 -exec rm {} \; #或者使用-delete参数

Informationen zur Verwendung des Suchbefehls finden Sie unter „Erweiterte Verwendung des Suchbefehls“. Diese Methode zum Löschen nach I-Node-Nummer ist auf alle oben genannten Dateitypen anwendbar.

Ein paar erläuternde Worte hier. Wie identifiziert das Betriebssystem eine Datei? Es identifiziert verschiedene Dateien nicht anhand des Dateinamens, sondern anhand einer iNode-Nummer, d. h. der i-Node-Nummer. Der Dateiname ist nur eines der Attribute der Datei.

Verwenden Sie Platzhalter zum Löschen

Keine große Erklärung:

$ rm *.pdf
$

Diese Methode kann jedoch zu einem versehentlichen Löschen führen, denn solange der Dateiname mit .pdf endet, wird er gelöscht. Verwenden Sie sie daher entsprechend der tatsächlichen Situation mit Vorsicht.

Zusammenfassung

Es gibt viele Möglichkeiten, spezielle Dateinamen zu löschen, die wie folgt zusammengefasst sind:

Bringen Sie beim Löschen den Pfad mit
  1. Beim Löschen verwenden –
  2. Verwenden Sie beim Löschen Anführungszeichen
  3. Verwenden Sie Escape-Zeichen, um das Löschen zu erleichtern
  4. Gemäß der Knotennummer löschen
  5. Verwenden Sie Platzhalter, um
  6. zu löschen
  7. Verschiedene Dateitypen können mit den oben genannten bequemeren Methoden gelöscht werden.

Das Entfernen spezieller Dateinamen unter Linux kann frustrierend sein, aber wir haben in diesem Artikel mehrere Möglichkeiten zur Behebung dieses Problems beschrieben. Sie können je nach Bedarf eine der Methoden auswählen, um diese Problemdateien schnell und effizient zu löschen. Jetzt können Sie Linux bedenkenlos verwenden und bei Bedarf spezielle Dateinamenprobleme schnell lösen.

Das obige ist der detaillierte Inhalt vonMehrere Möglichkeiten zum Löschen spezieller Dateinamen unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:lxlinux.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen