Comment déterminer le type de fichier sans extension sous Windows?

150

Je reçois parfois des fichiers de mes clients dont l'extension de fichier est incorrecte. Par exemple, le nom est image.jpgmais le fichier est en réalité une image TIFF. Dans de nombreux cas, je peux le clarifier en ouvrant le fichier dans un éditeur de texte, en regardant les quelques premiers octets, puis en déduisant le type de fichier dont il s’agit.

Cela fonctionne pour moi avec les fichiers JPEG, TIFF, GIF et PDF. Cependant, il existe beaucoup plus de types de fichiers.

Est-il possible d'automatiser l'identification du type de fichier correct en analysant les données contenues?

Martin
la source
36
Pour ceux que cela intéresse, la filecommande le fait sur les machines * nix.
boehj
10
Je ne comprends pas pourquoi cette question est hors sujet (après 3 ans). Je ne demande pas de logiciel spécifique (j'ai reformulé ma question pour le souligner). Je demande juste une solution.
Martin
2
Je ne comprends pas pourquoi 26 personnes pensent que le commentaire ci-dessus lié à boehj * nix "ajoute quelque chose d'utile au message". Cette question est balisée windows, mais le commentaire implique: "Vous ne pouvez pas le faire sous Windows, vous devez utiliser * nix à la place". Alors? Le commentaire est dirigé "pour ceux qui sont intéressés". En quoi? Changer d'ordinateur? :(
Aacini
2
@Aacini utile pour * nix les gens qui viennent ici de google.
jingyu9575
Déplacé vers softwarerecs.stackexchange.com/questions/36519/…
Nicolas Raoul le

Réponses:

145

Vous pouvez utiliser l' outil TrID , qui possède une bibliothèque croissante de définitions de types de fichiers pour identifier les fichiers avec.

Capture d'écran

Les caractères génériques sont pris en charge. Ainsi, dans votre exemple, vous pouvez simplement placer toutes les images à examiner dans un dossier, par exemple C: \ verifyimages. Vous pouvez ensuite utiliser la commande suivante:

trid C:\verifyimages\*

Cela examinera tous les fichiers du verifyimagesdossier.


Il existe également une version graphique disponible, TrIDNet :

Capture d'écran

Il existe une documentation sur la manière d'intégrer facilement TrID ou TrIDNet dans Windows Explorer et Total Commander:

Windows Explorer

Commandant Total

Gaffe
la source
4
Notez qu'il indique qu'il n'est pas licencié à des fins commerciales, mais uniquement à des fins personnelles
Chris Magnuson
2
J'ai eu du mal à déterminer quels fichiers à télécharger étaient nécessaires pour utiliser ce programme. Donc, ce commentaire est d'aider à cela. Vous devrez télécharger deux fichiers. Tout d'abord, l'utilitaire de ligne de commande ou l'utilitaire graphique. Deuxièmement, un dossier de définitions XML appelé "TrID XML defs". Placez les fichiers de définition XML dans le même répertoire que TrID. Puis scannez les définitions. Enfin, vous pouvez commencer à l'utiliser.
mrtsherman
Merci, mtsherman, pour cette clarification. J'étais confus aussi. La documentation pourrait être améliorée, mais bel outil!
J Woodchuck
52

fichier

File teste chaque argument pour tenter de le classer. Il existe trois ensembles de tests, exécutés dans cet ordre: les tests de système de fichiers, les tests de nombres magiques et les tests de langue. Le premier test qui réussit entraîne l'impression du type de fichier.

Le type imprimé contiendra généralement l’un des mots texte (le fichier ne contient que des caractères d’impression et quelques caractères de contrôle courants et peut être lu en toute sécurité sur un terminal ASCII), exécutable (le fichier contient le résultat de la compilation d’un programme sous une forme compréhensible pour un noyau UNIX ou un autre), ou données signifiant autre chose (les données sont généralement «binaires» ou non imprimables). Les exceptions sont les formats de fichiers connus (fichiers core, archives tar) connus pour contenir des données binaires.

Ignacio Vazquez-Abrams
la source
1
fileest standard, mais sur des systèmes plus anciens (en particulier non-Linux) pas très compétents. Pour Ubuntu, etc., il devrait être assez respectable et même installé en standard.
Thorbjørn Ravn Andersen Le
1
@Anm_LA, ce n'est pas du tout standard sur Windows, mais le lien dans la réponse est un port de la version GNU de fileWindows. Si d'autres commandes * nix vous intéressent en tant qu'utilisateur Windows, explorez ce site pour trouver toutes sortes de gemmes.
RBerteig le
2
Je doute fort que ce filesoit un expert des fichiers créés par les applications Windows.
Robin Green
5
@Robin: Vous pouvez le tester.
Ignacio Vazquez-Abrams le
11
@Robin: Je doute fort que vous ayez utilisé quoi que filece soit, et pourtant vous avez presque décidé de son efficacité.
mardi
13

Auparavant, je travaillais à la Bibliothèque nationale de France pour créer un système d'archivage numérique contenant non seulement des livres numérisés, mais aussi des millions d'artefacts numériques contenant toutes sortes de types de fichiers étranges. Nous avons utilisé JHOVE pour reconnaître les formats de fichiers.

JHOVE est une source ouverte, elle est gérée par JSTOR et la bibliothèque de l’Université de Harvard. C'est assez simple à utiliser .

Nicolas Raoul
la source
cool! mais reconnaît-il les formats propriétaires comme le fait TrID? De toute façon, je n'ai quelques utilisations pour identifier subformats / variantes de formats non-propriétaires (ou, pour être précis, « extensions » propriétaires aux formats standardisés), donc ce serait utile. merci pour le heads-up!
pepoluan
1

J'utilise les bibliothèques OutsideIn d'Oracle dans mes programmes. Pas gratuit, mais ils fonctionnent bien, surtout pour les images. Le marché dit qu'il prend en charge plus de 500 types de fichiers.

Richard Brightwell
la source
0

Vous pouvez vérifier le type de fichier à partir de n’importe quel ordinateur, y compris Windows, à l’adresse suivante:

http://www.checkfiletype.com

John Williams
la source
1
Bienvenue sur Super User! Veuillez lire comment recommander un logiciel dans les réponses , en particulier les bits en gras ; modifiez ensuite votre réponse pour suivre les instructions fournies. Cela s'applique même si vous recommandez un site Web! Cheers
bertieb