xyz-timestamp.log
일반 로그 파일이 아닌 다른 응용 프로그램과 연결하려는 형식의 파일이 많이 있습니다 .
나는 MIME 유형에 대해 읽었고 .local/share/mime/packages
새로운 MIME 유형을 설명하기 위해 mime-info 파일을 추가할 수 있다는 것을 알았습니다.
내가 생각해낸 파일은 다음과 같다.
<?xml version="1.0" encoding="utf-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="text/x-xyz-log">
<comment>XYZ Log</comment>
<glob pattern="xyz*.log" weight="100" />
</mime-type>
</mime-info>
그러나 그것은 잡히지 않았습니다. 별표가 중간에 있는 *.log
모드나 특정 파일이 아닌 모드나 특정 파일(예: apt 작업) 만 작동하는 것 같습니다 .sources.list
Free Desktop Standard는 특정 글로벌 기능을 지원하지 않거나 어떤 기능이 있는지 언급하지 않으므로 이에 대해 전혀 모릅니다.
고쳐 쓰다:
마침내 이 요소를 사용하여 작동하게 되었습니다 <magic>
. 그것만으로는 충분하지 않은 것 같습니다. 왜냐하면 이것을 하위 유형으로 선언한 후에도 여전히 일반 로그 파일의 엄청난 양에 압도되기 때문입니다. 나만의 오브와 마법의 조합만이 성공할 수 있습니다.
<?xml version="1.0"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="application/x-xyz-log">
<comment>XYZ Log</comment>
<sub-class-of type="text/x-log" />
<glob pattern="*.log" />
<magic priority="100">
<match type="string" offset="0:256" value="XYZ-Service started. LOLJK" />
</magic>
</mime-type>
</mime-info>
답변1
이것글로벌 모드의도적으로 단순화한 것 같습니다.이 부분이 요소에 대해서는 다음과 같이 명시되어 있습니다.
KDE의 glob 시스템은 "*.ext" 형식의 패턴을 감지하고 이를 내부 확장 해시 테이블에 저장하는 것이 간단하기 때문에 GNOME 및 ROX의 ext/regex 필드를 대체합니다. 두 데스크톱 모두 정규식의 모든 기능을 활용하지 못하며 어쨌든 glob 패턴은 파일 이름 일치에 더 적합합니다.