• [^] # Re: Commande file

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche Sortie de uchardet 0.0.8 pour la détection de codages de caractères. Évalué à 10.

    Mais file connaît quasi rien de la plupart des encodages, ou alors t'as une version spéciale! Tiens, je le lance sur un jeu de fichiers de test du dépôt d'uchardet:

    $ file test/et/*
    test/et/iso-8859-13.txt: ISO-8859 text
    test/et/iso-8859-15.txt: ISO-8859 text
    test/et/iso-8859-4.txt: ISO-8859 text
    test/et/utf-8.txt: UTF-8 Unicode text
    test/et/windows-1252.txt: Non-ISO extended-ASCII text
    test/et/windows-1257.txt: ISO-8859 text

    Il donne "ISO-8859 text" pour une majorité, ce qui veut pas dire grand chose (je connais au moins 15 IS0-8859-* codages et hormis la partie ASCII, ils sont tous vraiment vraiment différents (c'est même le but). En plus, il se plante dans un cas (WINDOWS-1257 aussi catégorisé en "ISO-8859 text"), et il sait pas dans un autre (WINDOWS-1252 qu'il dit juste être "Non-ISO", ce qui aide pas trop!).

    Dernier point: on n'est pas du tout sur les mêmes ordres de grandeur en terme de rapidité:

    $ time uchardet test/et/*
    test/et/iso-8859-13.txt: ISO-8859-13
    test/et/iso-8859-15.txt: ISO-8859-15
    test/et/iso-8859-4.txt: ISO-8859-4
    test/et/utf-8.txt: UTF-8
    test/et/windows-1252.txt: WINDOWS-1252
    test/et/windows-1257.txt: WINDOWS-1257
    real 0m0.008s
    user 0m0.004s
    sys 0m0.004s
    $ time file test/et/*
    test/et/iso-8859-13.txt: ISO-8859 text
    test/et/iso-8859-15.txt: ISO-8859 text
    test/et/iso-8859-4.txt: ISO-8859 text
    test/et/utf-8.txt: UTF-8 Unicode text
    test/et/windows-1252.txt: Non-ISO extended-ASCII text
    test/et/windows-1257.txt: ISO-8859 text
    real 0m0.044s
    user 0m0.036s
    sys 0m0.008s

    Parce qu'un outil comme file, en plus d'être faux ou imprécis, se traîne comme un escargot alors qu'uchardet est fait pour être rapide, juste et précis. 😜

    Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]