macos – 列出所有应用程序 – 输出为文本文件

我只是想知道如何使用优选的Applecript找到安装在Mac OS X 10.5上的所有应用程序,并将所有应用程序名称输出到文本文件中.

解决方法

在Mac OS X下安装的所有应用程序都在 Launch Services数据库中注册.

Launch Services框架包含一个helper shell命令lsregister,该命令除其他用途外还可以转储存储在Launch Services数据库中的信息.在Mac OS X 10.5和10.6下,该命令位于以下文件夹中:

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister

使用一些简单的grep过滤器,可以提取所有已注册应用程序的完整路径:

lsregister -dump | grep --after-context 1 "^bundle" | grep --only-matching "/.*\.app"

总而言之,以下AppleScript将使用info for命令计算所有已注册应用程序的用户可见名称:

property pLSRegisterPath : "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister"

set theAppPaths to every paragraph of (do shell script pLSRegisterPath & " -dump | grep --after-context 1 \"^bundle\" | grep --only-matching \"/.*\\.app\"")

set theNames to {}
repeat with thePath in theAppPaths
    try
        copy displayed name of (info for (thePath as POSIX file)) to end of theNames
    end try
end repeat
choose from list theNames

相关文章

HTML代码中要想改变字体颜色,常常需要使用CSS样式表。CSS是...
HTML代码如何让字体盖住图片呢?需要使用CSS的position属性及...
HTML代码字体设置 在HTML中,我们可以使用标签来设置网页中的...
在网页设计中,HTML代码的字体和字号选择是非常重要的一个环...
HTML(Hypertext Markup Language,超文本标记语言)是一种用...
外链是指在一个网页中添加一个指向其他网站的链接,用户可以...