Wie finde und entferne ich Byte Order Marks (BOM) in UTF-8-Dateien?

Mary-Kate Olsen
Freigeben: 2024-11-04 10:29:02
Original
536 Leute haben es durchsucht

How to Find and Remove Byte Order Marks (BOM) in UTF-8 Files?

Ein genialer Ansatz: BOM in UTF-8-Dateien finden

Die Notwendigkeit, ein Verzeichnis nach UTF-8-Dateien mit Byte-Reihenfolge zu durchsuchen Zu Debugging-Zwecken entstehen Markierungen (BOMs). Während Shell-Skripte eine unkomplizierte Lösung bieten, können sie mit Unvollkommenheiten wie unleserlichen Einzeilern oder Empfindlichkeit gegenüber Zeilenumbrüchen in Dateinamen zu kämpfen haben.

Eine verfeinerte Lösung

Auf der Suche nach mehr Betrachten Sie für einen eleganten Ansatz diesen prägnanten Befehl:

find . -type f -exec sed '1s/^\xEF\xBB\xBF//' -i {} \;
Nach dem Login kopieren

Dieser Befehl nutzt das Dienstprogramm „find“, um das angegebene Verzeichnis zu durchsuchen. Anschließend werden Dateien vom Typ „f“ (reguläre Dateien) gefiltert. Für jede qualifizierte Datei wird der „sed“-Editor aufgerufen, der eine Ersetzung in der ersten Zeile durchführt. Die Zeichenfolge ^xEFxBBxBF beginnt mit einer Steuersequenz, die den Beginn einer Zeile angibt, und entspricht den drei Zeichen, aus denen die Stückliste besteht: EF BB BF. Durch Ersetzen durch eine leere Zeichenfolge wird die Stückliste effektiv gelöscht.

Ein Vorsichtshinweis

Benutzer werden darauf hingewiesen, dass dieser Vorgang destruktiv ist. Binärdateien, die diese Zeichen enthalten, werden geändert. Um sich vor unbeabsichtigten Änderungen zu schützen, verwenden Sie stattdessen diesen Befehl:

grep -rl $'\xEF\xBB\xBF' .
Nach dem Login kopieren

Dieser geänderte Befehl bleibt der Mission von „grep“ des Mustervergleichs treu. Es behält die Fähigkeit bei, Dateien mit Stücklisten zu identifizieren, ohne Schaden anzurichten.

Das obige ist der detaillierte Inhalt vonWie finde und entferne ich Byte Order Marks (BOM) in UTF-8-Dateien?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage