Wie kann ich mit dem Befehl "file -i" ISO-8859-9 zurückgeben?

483
destan

Nehmen wir an, ich habe eine Textdatei mit Inhalt

şşş 

und in habe vi/vimich fileencodingals eingestellt :set fileencoding=ISO-8859-9.

Später, wenn ich die Kodierung mit überprüfe

file -i <myFile>

es gibt text/plain; charset=ISO-8859-1obwohl es hätte sein sollen ISO-8859-9 .

Warum das? Wie kann ich file -izurückkehren ISO-8859-9?

Weil sonst, wenn ich die Datei wieder vi/vimöffne, eine Kodierung angenommen wird ISO-8859-1und falsche Zeichen angezeigt werden:

þþþþþþþþþþ 
0
Sie müssen sich auch die Option "fileencodings" ansehen. Stellen Sie Ihren Vorzug vor anderen ein. Heptite vor 7 Jahren 0
@Heptite hilft nur die korrekte Kodierung für `vim` einzustellen. Es löst meine ursprüngliche Frage nicht. Das ist * Wie kann ich die Datei machen -i ISO-8859-9 zurückgeben * destan vor 7 Jahren 0
Ich habe versucht, nachzusehen, aber aus dem, was ich sehen kann, ist es unwahrscheinlich, dass das Dienstprogramm `file` (zuverlässig) zwischen den Kodierungen` ISO-8859- * 'unterscheiden kann. Haben Sie die Möglichkeit, stattdessen `UTF8` zu gehen? Heptite vor 7 Jahren 1
@Heptite, wenn ich nur `utf8` verwenden könnte, aber es gibt eine Datenbank, für die ich keine Berechtigung habe und nur` iso-8859-9 'akzeptiert destan vor 7 Jahren 0

0 Antworten auf die Frage