Gibt es einen Linux-Befehl, um herauszufinden, ob eine Datei UTF-8 ist?

21236
Edward

Die Joomla- .iniDateien müssen als UTF-8 gespeichert werden.

Nach dem Bearbeiten bin ich nicht sicher, ob die Dateien UTF-8 sind oder nicht.

Gibt es einen Linux-Befehl wie fileoder ein paar Befehle, die angeben, ob eine Datei tatsächlich UTF-8 ist oder nicht?

9
Sie können die Kodierung einer Datei nicht erkennen. Sie können nur eine intelligente Vermutung machen. Sie können meistens richtig raten, aber manchmal scheitern die Vermutungen. `file` ist ein Beispiel für ein Programm, das intelligente Vermutungen vornimmt. Marco vor 11 Jahren 1
@ Marco: Es ist jedoch möglich zu überprüfen, ob UTF-8 gültig ist oder nicht. Es gibt * einige * Kodierungen, die irrtümlich als gültige UTF-8-Werte übergeben werden können, aber bei ISO-8859- oder Windows-125-Kodierungen / Zeichensätzen ist dies fast nie der Fall. grawity vor 11 Jahren 1

2 Antworten auf die Frage

24
Rik

Sie können die Dateikodierung mit dem folgenden Befehl ermitteln:

file -bi filename 
Diese Antwort sollte akzeptiert werden. Die Erklärung für die Optionen -bi finden Sie in der [man-Datei] (http://linuxcommand.org/man_pages/file1.html). Jérôme vor 8 Jahren 0
soll es auch auf macos funktionieren? Ich bekomme eine reguläre Datei für eine Datei, die ich für utf8 hielt nicolas vor 8 Jahren 0
@nicolas Für MacOS können Sie `Datei -I Dateiname` (-I ist ein Großbuchstabe I) versuchen. Rik vor 8 Jahren 2
@Rik kann ich bestätigen nicolas vor 8 Jahren 0
Liest das die ganze Datei? ctrl-alt-delor vor 6 Jahren 0
@ ctrl-alt-delor Was meinst du damit, die ganze Datei zu lesen? Dies sollte nicht erforderlich sein, da die Dateikodierung wahrscheinlich im Header der Datei steht. kojow7 vor 6 Jahren 0
@ kojow7 utf-8 hat keinen Header. Reines ASCII (nur 7-Bit) ist von utf-8 nicht zu unterscheiden (das ist der Punkt davon, ein Header verursacht alle möglichen Probleme). Wenn Sie also für das erste MB eine ASCII-Datei haben und dann ein einzelnes UTF-8-Zeichen haben, werden Sie dies nicht wissen, es sei denn, Sie lesen die gesamte Datei. ctrl-alt-delor vor 6 Jahren 0
3
Pablo Olmos de Aguilera C.

Verwenden Sie dazu den isutf8Befehl aus dem Paket moreutils .

Quelle: Wie können Sie feststellen, ob eine Datei UTF-8-codiert ist oder nicht?


@ davidpostill Ich bin neugierig, ist es schlechte Praxis, den Autor in der Referenz zu zitieren? Pablo Olmos de Aguilera C. vor 8 Jahren 0