【问题标题】:How to write a magic file for libmagic to detect srt (subtitle) files如何为libmagic编写一个魔术文件来检测srt(字幕)文件
【发布时间】:2019-03-04 15:52:52
【问题描述】:

hhvm 使用 libmagic 来检测文件的 mime 类型。 当我上传 srt 格式的字幕文件时,将关键字“extern”作为一行的第一个单词,hhvm (libmagic) 将其检测为 text/x-c,并且 symfony 中的验证不包括该文件。

这就是为什么我需要一个魔法文件让 libmagic 正确识别 srt 文件。魔术文件的语法对我来说很复杂。有人可以帮助我或提供如何操作的提示吗?我已经阅读了手册页文件(1)和魔法(5)

srt文件格式简单:

1
00:01:23,667 --> 00:01:26,333
Und?
- Das ist der einzige Alligator hier.

2
00:01:30,000 --> 00:01:32,083
extern Vier Minuten vorbei.
In einer Minute gehen wir.

3
00:01:32,208 --> 00:01:33,749
Das hat er klar gesagt.

4
00:01:34,000 --> 00:01:35,000
Er kommt schon.

5
00:01:44,708 --> 00:01:47,208
Der ist zu jung, um an
solche Sachen zu gelangen.

6
00:02:02,000 --> 00:02:03,791
Wann öffnet das Restaurant?

7
00:02:03,958 --> 00:02:05,249
Um 12 Uhr mittags.

8
00:02:05,417 --> 00:02:07,375
Nur das Essen ist etwas zu scharf.

9
00:02:08,458 --> 00:02:09,874
Kommt mit.

10
00:02:30,208 --> 00:02:31,583
Verzeihung.

这个文本被 linux file 命令检测为 text/x-c。

【问题讨论】:

    标签: regex linux file mime-types libmagic


    【解决方案1】:

    这在 /etc/magic (ubuntu 16.04) 中对我有用:

    0   string  1
    >1   regex   \^[0-9:,\ ]*-->[0-9:,\ ]*   SubRip File
    !:mime text/x-srt
    

    【讨论】:

      猜你喜欢
      • 2011-06-25
      • 1970-01-01
      • 2015-05-27
      • 1970-01-01
      • 2011-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-23
      相关资源
      最近更新 更多