在我的公司,我们使用Google云端硬盘,并且经常必须告诉对方特定文件的路径。路径很长,因为我们使用了大量的嵌套文件夹,因此浏览所有这些文件非常枯燥乏味。
现在,在我以前的公司中,我们使用了一个中央afp服务器,所以这条路径对每个人都很常见,因此我创建了一个可以获得文件绝对afp路径的applescript脚本,人们在邮件中粘贴了该路径或聊天,最终用户可以点击自动成为链接的路径,查找器将打开,选择该链接导致的特定文件或文件夹。
我无法使用完全相同的脚本的原因是Google云端硬盘文件夹位于用户主文件夹中。因此,如果用户的名称为Foo,则路径为file:///Users/Foo/Google Drive
,而对于用户栏,路径将为file:///Users/Bar/Google Drive
显然,用户Foo生成的路径不适用于用户栏
因为,至少在终端中,file:///Users/username
的路径等于~
,我让我的脚本生成file:///~/Google Drive/pathToFolder
之类的链接,但它们不起作用:(点击此类链接将打开取景器,但不会选择正确的文件或文件夹
这让我发疯,因为它看起来应该可以工作,但它根本就没有......我应该尝试其他语法吗?有什么建议吗?
答案 0 :(得分:2)
我实际上找到了一个相当快速的解决方案。
有一个名为Lincastor https://onflapp.wordpress.com/lincastor/的免费OSX应用程序,它只是非常棒!它允许在使用自定义URL处理程序时触发某个shell命令,applescript或app。
所以我要去:
答案 1 :(得分:1)
Applescript有“path to”命令。它可以自动生成许多常用文件夹的路径,主文件夹就是其中之一。
所以这就是我如何完成你的任务。将以下AppleScript代码保存为 应用程序 。然后只需向所有人发送电子邮件当他们双击它时,1)如果您链接到文件夹,则Finder窗口将打开该文件夹或2)如果您链接到文件,则文件将使用默认应用程序自动打开。注意:如果您不想打开文件,则可以在代码中将“打开”更改为“显示”,这样只有Finder窗口才能打开该项目。
重要提示:applescript使用冒号(:)分隔的路径而不是“/”,因此请确保在路径中使用冒号,如我的代码所示。
set itemPath to (path to home folder as text) & "Google Drive:path:to:some:file:or:folder"
tell application "Finder"
set theItem to item itemPath
if (class of theItem) is folder then activate
open theItem
end tell