Cygwin https://www.cygwin.com/ file foo.exe
将根据文件格式幻数/元数据识别文件内容。 (不是他们的文件名)。大概也可以从以下来源获得或安装MinGW https://www.cygwin.com/,并且可能随任何发行版一起提供MS 针对 Linux 的 Windows 子系统 https://learn.microsoft.com/en-us/windows/wsl/install-win10, WSL.
这是相同的开源实现POSIXfile command https://pubs.opengroup.org/onlinepubs/9699919799/utilities/file.html大多数 BSD 和所有 Linux 发行版都使用它。上游来源是https://www.darwinsys.com/file/ https://www.darwinsys.com/file/
https://en.wikipedia.org/wiki/File_(命令) https://en.wikipedia.org/wiki/File_(command)显示示例输出。我的 Linux 桌面上有几个 Windows 可执行文件:
peter@volta:~/.wine/drive_c$ file Program\ Files/Internet\ Explorer/iexplore.exe
..../iexplore.exe: PE32+ executable (GUI) x86-64, for MS Windows
peter@volta:~/.wine/drive_c$ file Program\ Files\ \(x86\)/The\ Master\ Genealogist\ v9/tmg9.exe
..../tmg9.exe: PE32 executable (GUI) Intel 80386, for MS Windows
我不知道如果这是best答案是,如果您不经常使用命令行 shell(就像我在 Linux 桌面上所做的那样)。
file
适用于几乎任何类型的文件,例如ZIP、JPG、mp4、mkv,对于广泛使用的文件格式,它甚至会获取一些额外的元数据,例如 JPG 图像分辨率。 (它不是基于文件名,而是打开文件来查看元数据。通常前 4 个字节左右是一个“幻数”,指示文件类型。)
对于纯文本格式,它有时可以使用启发式方法来区分 HTML 与纯文本,并识别 UTF-8 与 UTF-16 与 ISO-8851 与纯 ASCII,以及 DOS 与 Unix 行结尾等。相当不错程序可以随身携带,而不仅仅是可执行文件。