Como posso determinar o tipo de arquivo sem uma extensão no Windows?

150

Às vezes, recebo arquivos de meus clientes com a extensão errada. Por exemplo, o nome é, image.jpgmas o arquivo é realmente uma imagem TIFF. Em muitos casos, posso esclarecê-lo abrindo o arquivo em um editor de texto, observando os primeiros bytes e deduzindo o tipo de arquivo.

Isso funciona para mim com arquivos JPEG, TIFF, GIF e PDF. No entanto, existem muitos outros tipos de arquivos por aí.

É possível automatizar a identificação do tipo de arquivo correto, analisando os dados contidos?

Martin
fonte
36
Para os interessados, o filecomando faz isso em máquinas * nix.
boehj
10
Eu não entendo por que essa pergunta está fora de tópico (após 3 anos). Não peço um software específico (reformulei minha pergunta para enfatizar isso). Eu apenas peço uma solução.
Martin
2
Não entendo por que 26 pessoas pensam que o comentário acima relacionado ao boehj * nix "adiciona algo útil à postagem". Esta pergunta está marcada windows, mas o comentário implica: "Você não pode fazer isso no Windows, você deve usar * nix". Assim? O comentário é direcionado "para os interessados". Em quê? Mudar de computador? :(
Aacini
2
@Aacini útil para * nix pessoas que vêm aqui do google.
jingyu9575

Respostas:

145

Você pode usar a ferramenta TrID , que possui uma biblioteca crescente de definições de tipo de arquivo para identificar arquivos.

Captura de tela

Caracteres curinga são suportados, portanto, no seu exemplo, você pode colocar todas as imagens a serem examinadas em uma pasta, por exemplo, C: \ confirmimages - então você pode usar o comando:

trid C:\verifyimages\*

Isso examinará todos os arquivos na verifyimagespasta.


Há também uma versão GUI disponível, TrIDNet :

Captura de tela

Há documentação disponível sobre como você pode integrar facilmente o TrID ou o TrIDNet no Windows Explorer e no Total Commander:

explorador de janelas

Comando total

Gaff
fonte
4
Note que isso indica que ele não está licenciado para uso comercial, apenas para uso pessoal
Chris Magnuson
2
Eu tive alguns problemas para descobrir quais arquivos de download eram necessários para usar este programa. Portanto, este comentário é para ajudar nisso. Você precisará baixar dois arquivos. Primeiro, o utilitário de linha de comando ou o utilitário da GUI. Segundo, uma pasta de definições XML chamada "TrID XML defs". Coloque os arquivos XML de definição no mesmo diretório que o TrID. Em seguida, verifique as definições. Finalmente, você pode começar a usá-lo.
mrtsherman
Obrigado, senhor deputado, pelo esclarecimento. Eu também estava confuso. O Google Docs pode ser melhorado, mas é uma boa ferramenta!
precisa
52

Arquivo

O arquivo testa cada argumento na tentativa de classificá-lo. Existem três conjuntos de testes, executados nesta ordem: testes de sistema de arquivos, testes de número mágico e testes de idioma. O primeiro teste bem-sucedido faz com que o tipo de arquivo seja impresso.

O tipo impresso geralmente contém uma das palavras texto (o arquivo contém apenas caracteres de impressão e alguns caracteres de controle comuns e provavelmente é seguro para leitura em um terminal ASCII), executável (o arquivo contém o resultado da compilação de um programa em um formulário compreensível para um kernel UNIX ou outro) ou dados que significam qualquer outra coisa (os dados geralmente são "binários" ou imprimíveis). Exceções são formatos de arquivo conhecidos (arquivos principais, arquivos tar) que são conhecidos por conter dados binários.

Ignacio Vazquez-Abrams
fonte
11
fileé padrão, mas em sistemas mais antigos (especialmente não Linux) não tem muito conhecimento. Para o Ubuntu etc, deve ser bastante respeitável e até instalado como padrão.
Thorbjørn Ravn Andersen
11
@Anm_LA, não é padrão no Windows, mas o link na resposta é para uma porta da versão GNU do fileWindows. Se outros comandos * nix forem interessantes para você como usuário do Windows, procure pelo site para encontrar todos os tipos de gemas.
RBerteig
2
Duvido muito que fileseja um especialista em arquivos criados por aplicativos do Windows.
24511 Robin Green
5
@ Robin: Você pode testá-lo.
Ignacio Vazquez-Abrams
11
@Robin: Eu duvido muito que você tenha usado alguma filecoisa e, no entanto, quase se decidiu sobre a sua eficácia.
tzot
13

Eu trabalhava na Biblioteca Nacional Francesa, para construir um sistema de arquivo digital que contém não apenas livros digitalizados, mas também milhões de artefatos digitais com todos os tipos de arquivos estranhos. Usamos o JHOVE para reconhecer os formatos de arquivo.

O JHOVE é de código aberto, é mantido pelo JSTOR e pela Harvard University Library. É bastante simples de usar .

Nicolas Raoul
fonte
legal! mas reconhece formatos proprietários como o TrID? de qualquer maneira, eu não tenho alguns usos para identificar subformatos / variantes de formatos não-proprietários (ou, para ser mais preciso, 'extensões' proprietários para formatos padronizados), de modo que este viria a calhar. obrigado pelo aviso!
precisa saber é
1

Eu uso as bibliotecas OutsideIn da Oracle em meus programas. Não é gratuito, mas eles funcionam bem, especialmente para imagens. O discurso do mercado diz que suporta mais de 500 tipos de arquivos.

Richard Brightwell
fonte
0

Você pode verificar o tipo de arquivo em qualquer computador, incluindo janelas em

http://www.checkfiletype.com

John Williams
fonte
11
Bem-vindo ao Super Usuário! Por favor, leia como recomendar software em respostas , particularmente os bits em negrito ; edite sua resposta para seguir as diretrizes lá. Isso se aplica mesmo que você esteja recomendando um site! Cheers
bertieb