如何在linux中以编程方式查找文件格式?

如何在linux中以编程方式查找文件格式?,linux,file,timezone,format,file-type,Linux,File,Timezone,Format,File Type,我需要通过FTP将时区数据文件上传到目标板。时区数据文件名被重命名或修改为“时区信息”。所以我需要验证上传的文件是否为时区数据格式?FTP将接受任何名为time\u zone\u info的文件。我需要验证文件格式,如果它是时区数据格式,那么我需要将该文件保存在目标板中,否则需要将错误抛出到FTP。您需要读取文件的第一个字节。对于TZ数据,前4个字节应为TZif(文件的第2版为TZif2) 在Python中,您可以执行以下操作: def check_tz(fname): fd=打开(fname,

我需要通过FTP将时区数据文件上传到目标板。时区数据文件名被重命名或修改为“时区信息”。所以我需要验证上传的文件是否为时区数据格式?FTP将接受任何名为time\u zone\u info的文件。我需要验证文件格式,如果它是时区数据格式,那么我需要将该文件保存在目标板中,否则需要将错误抛出到FTP。您需要读取文件的第一个字节。对于TZ数据,前4个字节应为
TZif
(文件的第2版为
TZif2

在Python中,您可以执行以下操作:

def check_tz(fname):
fd=打开(fname,‘rb’)
结果=fd.读取(4)!='Tzif'
fd.close()
返回结果

如果需要使用shell,那么您可以使用实用工具
文件
。您也可以使用libmagic或使用您喜欢的语言在函数中进行producedure。

在我们的目标板中,我们使用的是内核2.4版本,busybox实用程序也是旧版本。think is‘file’实用程序在本文档中不存在。那么,我该怎么办呢?我如何获得这个文件实用程序的源代码?谷歌搜索。提示:
libmagic