Spotlight 現在將 bash 腳本視為“文件”而不是“unix 可執行檔”

Spotlight 現在將 bash 腳本視為“文件”而不是“unix 可執行檔”

我有一個經常使用的 bash 腳本目錄,我傾向於透過 Alfred 啟動這些腳本

Alfred 反過來依賴 Spotlight 來索引腳本,並為它們分配元內容類型“public.unix-executable”

自從從 Mavericks 升級到 El Capitan 以來,Spotlight 將其中一些腳本視為“public.data”並且 Kind=Document 這意味著它們無法再從 Alfred 啟動

$ mdls pull_repo1

..
kMDItemContentType             = "public.data"
kMDItemContentTypeTree         = (
    "public.data",
    "public.item"
)
..
kMDItemKind                    = "Document"

從頭開始重新索引 Spotlight 後,它現在將所有這些腳本視為 public.data

誰能給我一些關於為什麼在最近的 OSX 中發生變化的見解,以及是否有任何解決方案來解決它?

答案1

我找到了一個解決方案,儘管不是理想的解決方案

將所有 bash 腳本重新命名為 .sh 副檔名後,Spotlight 開始將它們索引為 kMDItemContentType = 'public.shell-script'

這至少意味著它可以被阿爾弗雷德撿起

相關內容