staging.inyokaproject.org

Mit Terminal encoding der Dateien herausfinden

Status: Gelöst | Ubuntu-Version: Ubuntu 11.04 (Natty Narwhal)
Antworten |

Revollt

Anmeldungsdatum:
19. August 2010

Beiträge: Zähle...

Hallo wie kann man im Terminal die Encoding der Dateien herausfinden?

also ls -l listet mir alles schön auf, jetzt würde ich noch die encoding (utf-8, iso ...) der Dateien sehen. Hätte schwören können habe sowas mal gesehen

Danke

kutteldaddeldu Team-Icon

Anmeldungsdatum:
1. Juli 2008

Beiträge: 3586

Schau Dir mal file an.

Revollt

(Themenstarter)

Anmeldungsdatum:
19. August 2010

Beiträge: Zähle...

Hi. Verstehe ich nicht ganz, da sehe ich keine Option für die Encodingausgabe

kutteldaddeldu Team-Icon

Anmeldungsdatum:
1. Juli 2008

Beiträge: 3586

Gib im Terminal ein:

file Dateiname

Dann müsste auch die Zeichenkodierung angezeigt werden.

Revollt

(Themenstarter)

Anmeldungsdatum:
19. August 2010

Beiträge: Zähle...

Hi. Ahso das meinst du. Hmm ist irgendwie nicht das was ich möchte. Habe mit Gedit eine Datei geschrieben und als UTF8 file gespeichert aber wenn ich mit file *name drübergehe sagt er:

1
ASCII text, with no line terminators

wäre netter wenn er sagt ob UTF8

kutteldaddeldu Team-Icon

Anmeldungsdatum:
1. Juli 2008

Beiträge: 3586

Hmm, komisch – bei mir klappt das mit der UTF-8-Anzeige durch file.

Ansonsten: Probier mal enca. Eigentlich sollte das sein, was Du suchst – allerdings bekomme ich damit eine „Unrecognized encoding“-Meldung bei einer Datei, die eigentlich 8959-15 sein sollte. (Und in Vim als Latin1 angezeigt wird.)

linux_joy

Anmeldungsdatum:
6. Februar 2008

Beiträge: 803

Hallo zusammen,

hier kommt auch noch mein Beitrag zum Thema; auch, damit Inet-Suchmaschinen schneller die passende Lösung anbieten können:

  • Neben file und enca 🇬🇧 (enca) gibt es auch noch uchardet 🇬🇧 (uchardet) und encguess 🇬🇧 (perl, meist bereits vorinstalliert).

    • Die beiden Letzteren liefern laut How can I find encoding of a file via a script on Linux? 🇬🇧 meist bessere Ergebnisse als file oder enca.

    • Bei mir klappte am besten encguess:

      ubuntu-mate@ubuntu-mate:~$ enca /usr/bin/groups
      Der Befehl 'enca' wurde nicht gefunden, kann aber installiert werden mit:
      sudo apt install enca
      ubuntu-mate@ubuntu-mate:~$ sudo apt install enca
      Paketlisten werden gelesen… Fertig
      Abhängigkeitsbaum wird aufgebaut… Fertig
      Statusinformationen werden eingelesen… Fertig
      Die folgenden zusätzlichen Pakete werden installiert:
        libenca0
      Vorgeschlagene Pakete:
        cstocs
      Die folgenden NEUEN Pakete werden installiert:
        enca libenca0
      0 aktualisiert, 2 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
      Es müssen 111 kB an Archiven heruntergeladen werden.
      Nach dieser Operation werden 374 kB Plattenplatz zusätzlich benutzt.
      Möchten Sie fortfahren? [J/n] j
      Holen:1 http://archive.ubuntu.com/ubuntu noble/universe amd64 libenca0 amd64 1.19-1.1build1 [61,0 kB]
      Holen:2 http://archive.ubuntu.com/ubuntu noble/universe amd64 enca amd64 1.19-1.1build1 [49,8 kB]
      Es wurden 111 kB in 0 s geholt (463 kB/s).
      ...
      ...
      ...
      ubuntu-mate@ubuntu-mate:~$ enca /usr/bin/groups
      enca: Language `de' is unknown or not supported.
      Run `enca --list languages' to get list of supported languages.
      Run `enca -L none' to test only language independent, multibyte encodings.
      ubuntu-mate@ubuntu-mate:~$ enca -L none
      ^C
      ubuntu-mate@ubuntu-mate:~$ enca -L none /usr/bin/groups
      Unrecognized encoding
      ubuntu-mate@ubuntu-mate:~$ enca --list languages
      belarusian: CP1251 IBM866 ISO-8859-5 KOI8-UNI maccyr IBM855 KOI8-U
       bulgarian: CP1251 ISO-8859-5 IBM855 maccyr ECMA-113
           czech: ISO-8859-2 CP1250 IBM852 KEYBCS2 macce KOI-8_CS_2 CORK
        estonian: ISO-8859-4 CP1257 IBM775 ISO-8859-13 macce baltic
        croatian: CP1250 ISO-8859-2 IBM852 macce CORK
       hungarian: ISO-8859-2 CP1250 IBM852 macce CORK
      lithuanian: CP1257 ISO-8859-4 IBM775 ISO-8859-13 macce baltic
         latvian: CP1257 ISO-8859-4 IBM775 ISO-8859-13 macce baltic
          polish: ISO-8859-2 CP1250 IBM852 macce ISO-8859-13 ISO-8859-16 baltic CORK
         russian: KOI8-R CP1251 ISO-8859-5 IBM866 maccyr
          slovak: CP1250 ISO-8859-2 IBM852 KEYBCS2 macce KOI-8_CS_2 CORK
         slovene: ISO-8859-2 CP1250 IBM852 macce CORK
       ukrainian: CP1251 IBM855 ISO-8859-5 CP1125 KOI8-U maccyr
         chinese: GBK BIG5 HZ
            none:
      ubuntu-mate@ubuntu-mate:~$ file /usr/bin/groups
      /usr/bin/groups: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=fcabf5cc5418e52c3ce42e622361b99a52c18af8, for GNU/Linux 3.2.0, stripped
      ubuntu-mate@ubuntu-mate:~$ file /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt
      /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt: Unicode text, UTF-8 text
      ubuntu-mate@ubuntu-mate:~$ enca /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt
      enca: Language `de' is unknown or not supported.
      Run `enca --list languages' to get list of supported languages.
      Run `enca -L none' to test only language independent, multibyte encodings.
      ubuntu-mate@ubuntu-mate:~$ xxd /usr/bin/groups | head -n 1
      00000000: 7f45 4c46 0201 0100 0000 0000 0000 0000  .ELF............
      ubuntu-mate@ubuntu-mate:~$ hexdump -C /usr/bin/groups | head -n 1
      00000000  7f 45 4c 46 02 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|
      ubuntu-mate@ubuntu-mate:~$ xxd /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt | head -n 1
      00000000: 0a0a 0a0a 7562 756e 7475 2d6d 6174 6540  ....ubuntu-mate@
      ubuntu-mate@ubuntu-mate:~$ hexdump -C /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt | head -n 1
      00000000  0a 0a 0a 0a 75 62 75 6e  74 75 2d 6d 61 74 65 40  |....ubuntu-mate@|
      ubuntu-mate@ubuntu-mate:~$ encguess /usr/bin/groups
      /usr/bin/groups	UTF-32LE
      ubuntu-mate@ubuntu-mate:~$ encguess /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt
      /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt	UTF-8
      ubuntu-mate@ubuntu-mate:~$ file -b /usr/bin/groups
      ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=fcabf5cc5418e52c3ce42e622361b99a52c18af8, for GNU/Linux 3.2.0, stripped
      ubuntu-mate@ubuntu-mate:~$ file -i /usr/bin/groups
      /usr/bin/groups: application/x-pie-executable; charset=binary
      ubuntu-mate@ubuntu-mate:~$ file -bi /usr/bin/groups
      application/x-pie-executable; charset=binary
      ubuntu-mate@ubuntu-mate:~$ file -b /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt
      Unicode text, UTF-8 text
      ubuntu-mate@ubuntu-mate:~$ file -i /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt
      /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt: text/plain; charset=utf-8
      ubuntu-mate@ubuntu-mate:~$ file -bi /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt
      text/plain; charset=utf-8
      ubuntu-mate@ubuntu-mate:~$ uchardet /usr/bin/groups
      Der Befehl 'uchardet' wurde nicht gefunden, kann aber installiert werden mit:
      sudo apt install uchardet
      ubuntu-mate@ubuntu-mate:~$ sudo apt install uchardet
      Paketlisten werden gelesen… Fertig
      Abhängigkeitsbaum wird aufgebaut… Fertig
      Statusinformationen werden eingelesen… Fertig
      Die folgenden NEUEN Pakete werden installiert:
        uchardet
      0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
      Es müssen 5.534 B an Archiven heruntergeladen werden.
      Nach dieser Operation werden 29,7 kB Plattenplatz zusätzlich benutzt.
      Holen:1 http://archive.ubuntu.com/ubuntu noble/main amd64 uchardet amd64 0.0.8-1build1 [5.534 B]
      Es wurden 5.534 B in 0 s geholt (16,7 kB/s).
      ...
      ...
      ...
      ubuntu-mate@ubuntu-mate:~$ uchardet /usr/bin/groups
      unknown
      ubuntu-mate@ubuntu-mate:~$ uchardet /media/ubuntu-mate/.../20250426-27_Terminal__chown-Befehl-Testung.txt
      UTF-8
      ubuntu-mate@ubuntu-mate:~$
Antworten |