Ubuntu 中带有 .gif 扩展名的纯文本
Plain text with .gif extension in Ubuntu
事情是这样的,我正在使用终端来执行此操作。使用诸如 nano 之类的文本编辑器,我创建了一个包含以下内容的纯文本文件:"GIF89a2017" 并将其保存为 rare.gif
事情是这样的,当我做 file rare.gif 它给了我这个输出:rare.gif:GIF图片数据,版本89a,12338 x 14129,表示是一张分辨率为[=23=的GIF图片]12338 x 14129 这就是我不明白的。该分辨率来自哪里?
另一件事是,我认为扩展名并没有真正决定它是什么类型的文件,例如当我将 .gif 转换为 .exe 它仍然使用 file 命令将其识别为 GIF 图像。我猜想在我遇到的问题中,它被识别为 GIF 图片,因为它是使用 GIF 扩展名创建的,但我想知道为什么。
谢谢大家!
Where´s that resolution coming from?
它来自您放入文件的(伪造的)GIF89 header。 "GIF89a" 后面的四个字节定义了宽度和高度。每个都存储为 16 位无符号整数。你放在那里的字符 - 2017
- 被解释为:
32 30 ("20") -- 0x3032 = 12338
31 37 ("17") -- 0x3731 = 14129
I'm gonna guess that in the problem that I have it is recognised as a GIF image because it was created with the GIF extension but I'd like to know why.
不,file
不查看扩展。这是因为该文件有 semi-valid GIF header。如果您将 header 更改为不是以 "GIF89a" 开头的内容,它将不再被识别为 GIF。
事情是这样的,我正在使用终端来执行此操作。使用诸如 nano 之类的文本编辑器,我创建了一个包含以下内容的纯文本文件:"GIF89a2017" 并将其保存为 rare.gif
事情是这样的,当我做 file rare.gif 它给了我这个输出:rare.gif:GIF图片数据,版本89a,12338 x 14129,表示是一张分辨率为[=23=的GIF图片]12338 x 14129 这就是我不明白的。该分辨率来自哪里?
另一件事是,我认为扩展名并没有真正决定它是什么类型的文件,例如当我将 .gif 转换为 .exe 它仍然使用 file 命令将其识别为 GIF 图像。我猜想在我遇到的问题中,它被识别为 GIF 图片,因为它是使用 GIF 扩展名创建的,但我想知道为什么。
谢谢大家!
Where´s that resolution coming from?
它来自您放入文件的(伪造的)GIF89 header。 "GIF89a" 后面的四个字节定义了宽度和高度。每个都存储为 16 位无符号整数。你放在那里的字符 - 2017
- 被解释为:
32 30 ("20") -- 0x3032 = 12338
31 37 ("17") -- 0x3731 = 14129
I'm gonna guess that in the problem that I have it is recognised as a GIF image because it was created with the GIF extension but I'd like to know why.
不,file
不查看扩展。这是因为该文件有 semi-valid GIF header。如果您将 header 更改为不是以 "GIF89a" 开头的内容,它将不再被识别为 GIF。