applescript - AppleScript - 如何获取文件夹的第一个子路径(仅当第一个子是文件夹而不是文件时)?
问题描述
你如何获得文件夹的第一个子路径(当第一个子是文件夹时)?
说你有...
Folder 1 ¬
File 1
File 2
Folder 2 ¬
File A
File B
File C
File D
用例:
我选择了一批文件夹,所有文件夹都与以下文件夹处于同一级别Folder 1
:
set foldersToProcess to choose folder with multiple selections allowed
然后,我遍历每个排队的文件夹foldersToProcess
,在这个过程中,我想每次都查看Folder 1
(being Folder 2
) 的第一个子文件夹。
我该怎么做呢?
解决方案
您应该使用try 块,因为可能某些选定的文件夹根本不包含子文件夹。因此,如果没有 try 块,它将在请求空列表的文件夹 1 时抛出错误。
要将第一个文件夹作为系统事件的文件夹引用:
set chosenFolders to (choose folder with multiple selections allowed)
set firstFolders to {}
repeat with anAlias in chosenFolders
try
tell application "System Events" to ¬
set end of firstFolders to folder 1 of folder (anAlias as text)
end try
end repeat
要获取第一个文件夹的HFS 路径,请编辑相应的代码行:
tell application "System Events" to ¬
set end of firstFolders to path of folder 1 of folder (anAlias as text)
要获取第一个文件夹的Posix 路径,请编辑相应的代码行:
tell application "System Events" to ¬
set end of firstFolders to POSIX path of folder 1 of folder (anAlias as text)