删除OS X上的服务

Modified on: Mon, 11 Feb 2019 20:00:02 +0800

我希望完全删除某些服务,或者至少从“键盘”偏好设置面板中的列表中删除。我试过了:

  1. Service Scrubber。它只从菜单中删除服务 - 这是您从10.6开始就可以从系统偏好设置中完成的工作。
  2. 删除~/Library/Services//Library/Services/中的文件。只是大多数第三方应用程序都没有提供服务。
  3. defaults delete /Applications/SomeApp.app/Contents/Info NSServices。它确实从“系统偏好设置”中的列表中删除了服务。但它也使bundle的代码签名无效,更新可以通过更新来恢复。
  4. 醇>

    我想您只需要解决最后一个选项,并在需要时使用codesign分配新签名。但是有更简单的方法吗?

作者:,user495470

最佳答案

#!/bin/sh applist="Path Finder Skim TextWrangler" IFS=$'\n' for appname in $applist; do apppath=$(mdfind -onlyin /Applications/ -onlyin ~/Applications/ \ -onlyin /Developer/Applications/ -onlyin /System/Library/CoreServices/ \ 'kMDItemKind == Application' | grep -i "/$appname.app$" | head -1) echo $apppath date=$(date '+%y%m%d%-H%M%S') cp "$apppath/Contents/Info.plist" "$apppath/Contents/Info-$date.plist" defaults delete "$apppath/Contents/Info" NSServices codesign -f -s - "$apppath" done

作者:,user495470

相关问答

添加新评论