自动执行文件关联任务,即选择将要从Explorer / Finder打开文件的程序。 和分享。
首先是问题。 默认情况下,所需扩展名的文件通常不打开任何内容,如果打开,则使用某些iTunes打开。 在Windows下,安装(甚至卸载)程序时,必要的关联发生了,完全丢失了:以前是GIMP,您将其拆除,并且ico文件从通常的文件查看器传输到标准的Photo Gallery。 怎么了 怎么了 它是未知的...并且,如果您发现新的编辑器或由于各种原因而重新安装了? 如果不孤单的计算机? 通常,在对话框中用鼠标单击是一种娱乐。
相反,我在Dropbox上保存了两个文件,现在我可以立即将计算机世界带入熟悉的状态。 以及等待了这么多年的东西...接下来是Windows和macOS的配方。
窗户
在Windows控制台cmd.exe
这分两个阶段完成:
ftype my_file_txt="C:\Windows\notepad.exe" "%1" assoc .txt=my_file_txt
更改将立即生效。 尽管已经为当前用户注册了关联,但是出于某种原因,您仍需要以管理员权限运行这些命令。 并且从蝙蝠文件开始时,不要忘记将百分比符号(%% 1)加倍。 Windows 7 Ultimate 64位的神奇世界...
UPD 实验表明,使用ftype / assoc进行的操作会影响计算机上的所有用户(我们的编辑部没想到会有这种转变)。 但是,该计划仍然有效。 但是我将找出如何不影响其余部分。
操作系统
在makoshi中,可以使用duti实用程序方便地设置关联。 它是通过brew install duti
。 用法示例:
duti -s com.apple.TextEdit .txt "editor"
更改将立即生效;不需要sudo。 这里的参数“ com.apple.TextEdit”是我们需要的程序的所谓“捆绑ID”。 参数“编辑器”是关联的类型:“编辑器”用于编辑,“查看器”用于查看,“所有”用于所有内容。
您可以找到这样的“ bundle id”:如果存在第三个版本的“ / Applications / Sublime Text.app”,则空闲捆绑包将包含“ com.sublimetext.3”,或者其他:
> osascript -e 'id of app "Sublime Text"' com.sublimetext.3
在macOS Sierra上测试。
Windows的最终脚本(.bat)
@echo off set XNVIEW=C:\Program Files (x86)\XnView\xnview.exe set SUBLIME=C:\Program Files\Sublime Text 3\sublime_text.exe set FOOBAR=C:\Program Files (x86)\foobar2000\foobar2000.exe call :assoc_ext "%SUBLIME%" txt md js json css java sh yaml call :assoc_ext "%XNVIEW%" png gif jpg jpeg tiff bmp ico call :assoc_ext "%FOOBAR%" flac fla ape wav mp3 wma m4a ogg ac3 goto :eof :assoc_ext set EXE=%1 shift :loop if "%1" neq "" ( ftype my_file_%1=%EXE% "%%1" assoc .%1=my_file_%1 shift goto :loop ) goto :eof
macOS(.sh)的最终脚本