![如何在 MC 查看器中添加文件类型的自定义解析器?](https://linux22.com/image/1556748/%E5%A6%82%E4%BD%95%E5%9C%A8%20MC%20%E6%9F%A5%E7%9C%8B%E5%99%A8%E4%B8%AD%E6%B7%BB%E5%8A%A0%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E8%A7%A3%E6%9E%90%E5%99%A8%EF%BC%9F.png)
当你在午夜指挥官中按下F3一个.sqlite
文件时,查看器会显示该文件的 SQL 转储而不是原始二进制文件,并且F8可以用来在解析和生的模式。
此行为适用于许多其他文件类型,例如,在.zip
文件上按 F3 将列出文件内容,在.doc
文件上按 F3 将通过管道传输文件antiword
,.pdf
通过管道传输文件pdftotext
等。
是否可以为自定义文件类型添加自己的解析器?
答案1
是的,这是可能的。看一下/etc/mc/mc.ext
:程序和文件类型关联在那里定义。例如,这是您提到的 zip、sqlite 和 doc 的关联:
# sqlite3.db
type/^SQLite 3.x database
Open=/usr/lib/mc/ext.d/misc.sh open sqlite
View=%view{ascii} /usr/lib/mc/ext.d/misc.sh view sqlite
# zip
type/^([Zz][Ii][Pp])\ archive
Open=%cd %p/uzip://
View=%view{ascii} unzip -v %f
# Microsoft Word Document
regex/\.([Dd][oO][cCtT]|[Ww][rR][iI])$
Open=(lowriter %f >/dev/null 2>&1 &)
View=%view{ascii} antiword -t %f || catdoc -w %f || word2x -f text %f - || strings %f
您可以mc.ext
在文件开头的注释中阅读有关语法的内容:https://github.com/MidnightCommander/mc/blob/master/misc/mc.ext.in。
以下是一篇相关文章:https://ubuntuincident.wordpress.com/2010/12/08/configure-mc-open-files/