搜索快捷键 cmd + k | ctrl + k
magic

移植到 DuckDB 的 libmagic/file 实用程序

维护者: carlopi

安装和加载

INSTALL magic FROM community;
LOAD magic;

示例

--- Discover autodetected types for files in a local folder
SELECT magic_mime(file), magic_type(file), file
    FROM glob('path/to/folder/**');

--- Discover autodetected types for a remote file
LOAD httpfs;  --- this needs to currently be explcit once per session
SELECT magic_mime(file), magic_type(file), file
    FROM glob('https://raw.githubusercontent.com/duckdb/duckdb/main/data/parquet-testing/adam_genotypes.parquet');

--- Read file without providing detail on type
FROM read_any('https://raw.githubusercontent.com/duckdb/duckdb/main/data/parquet-testing/adam_genotypes.parquet');

关于 magic

libmagic(为 file UNIX 实用程序提供支持)的非常实验性的端口,允许根据标头的内容,按照 libmagic 库对文件进行分类。与 magic 库的 5.45 版本打包。magic.mgc 数据库目前静态编译到库中,因此它在各个平台上是相同的,但不可变。目前在 Windows 和 Wasm 中不可用,因为存在不同但可能可以解决的 vc-packaging 问题,有待独立解决。

新增函数

function_name (函数名) 函数类型 description (描述) comment (注释) examples (示例)
magic_mime 标量 NULL NULL  
magic_type 标量 NULL NULL  
read_any table_macro (表宏) NULL NULL