Mac批量设置视频文件默认打开方式为Movist
2016-07-21
Mac批量设置视频文件默认打开方式为Movist
在Mac中播放视频软件最好的,应当属于Movist,但是Movist中我并没有找到将其作为视频的默认播放器设置
而Mac单独设置一类文件作为默认打开方式可以这样做:
文件名右键 -> 显示简介 -> 打开方式 -> 全部更改
但是,这样一个个类型的修改比较麻烦,有没有更好的办法?
当然是有的
快速配置
安装duti
1 | brew install duti |
如果brew都没有,执行下面命令安装brew
1 | /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" |
配置常见视频使用Movist打开
不需要知道原理的可以直接打开终端(shell),执行一下代码
1 | duti -s com.movist.movist public.movie viewer |
原理
Bundle ID
Bundle ID (应用标识符)) 是 iOS 或者 Mac 应用的唯一标识.
com.movist.movist
就是Movist的Bundle ID
那么,怎么看一个应用的Bundle ID ?
1 | osascript -e 'id of app "Finder"' |
UTI(Uniform Type Identifiers)
有了Bundle ID,还需要UTI,其实可以理解为文件类型标示,类似后缀名,但不是后缀名,苹果系统是通过文件的UTI关联的是那个应用,然后会通过关联的应用来打开这个文件,当然后缀名和这个东西也是有某种关联关系的,这里暂不讨论
怎么看?
- 苹果的网站上有列出一些
- 通过mdls命令查看,看
1 | Movies >mdls IMG_2436.MP4 |
kMDItemContentType,kMDItemContentTypeTree就是UTI,kMDItemContentType优先
开始实践
简单说,就是通过duti命令来查看和关联文件和打开应用
查看UTI关联的应用:
1 | duti -d public.movie |
配置一个public.movie类型的文件关联movist
1 | duti -s com.movist.movist public.movie viewer |
详细参数说明
- -s : 选项会让 duti 从命令行读参数.
- -x ext : 选项会让 duti 输出参数中扩展名对应的默认应用
- -d uti : 打印 UTI 的默认应用.
- -l uti : 打印 UTI 的所有可用应用.
- -V: 打印版本.
- -v: 详细输出.
- -h: 帮助.
通过读取文件配置
使用 -s 选项, 从命令行读取参数:
1 | duti -s com.apple.Safari public.html all |
如果配置项特别多可以把配置保存到文本文件中,方面以后编辑管理,格式如下
1 | com.movist.movist public.movie viewer |
比如就保存叫 duti-files
, 然后执行duti命令,
1 | duti duti-files |
即可完成格式的关联
其他文件格式关联
1 | # *.md |