Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了linux – 你如何编写一个魔术文件测试模式来匹配文件的结尾?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我开始怀疑这是否可能,因为在SO,Google,Bing和 linuxquestions.org上的多次搜索都没有发现. 我有兴趣扩展位于/usr/share / magic(由文件(1)实用程序使用)的魔术模式,以根据文件末尾或附近的数据识别文件.我已经能够在文件的开头执行此操作,以及从一开始就对文件进行任意偏移. 该手册页很好地说明了一些标准用例;不幸的是,似乎没有一种方法可以从最终开始而不是
我开始怀疑这是否可能,因为在SO,Google,Bing和 linuxquestions.org上的多次搜索都没有发现.

我有兴趣扩展位于/usr/share / magic(由文件(1)实用程序使用)的魔术模式,以根据文件末尾或附近的数据识别文件.我已经能够在文件的开头执行此操作,以及从一开始就对文件进行任意偏移.

该手册页很好地说明了一些标准用例;不幸的是,似乎没有一种方法可以从最终开始而不是从开始进行索引.我能想到的唯一解决方法是采用使用tac和/或lreverse的脚本方法,但感觉这些可能对二进制数据不友好.

此外,我想避免任何其他脚本处理 – 我觉得这应该是正确的文件魔术可行.有任何想法吗?

解决方法

是不可能的. file(1)也适用于管道.您不能在管道上使用lseek(2)来到达文件末尾.读取整个文件直到结束将非常慢(并且文件(1)努力快速)并且如果它实际上是从管道读取,它可能永远不会遇到文件的结尾,这将更糟糕.

至于文档,在开源软件的情况下,源代码本身就是最终的文档.如果你遇到这样的情况,看看总是一个好主意. src / magic.c中的函数file_or_fd()给出了线索​​.使用来源,卢克!

大佬总结

以上是大佬教程为你收集整理的linux – 你如何编写一个魔术文件测试模式来匹配文件的结尾?全部内容,希望文章能够帮你解决linux – 你如何编写一个魔术文件测试模式来匹配文件的结尾?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。