我有超过200张照片。我想要Applecript:
所以即。 XXX.jpg进入XXX文件夹。
任务或多或少简单但我在mac论坛上发现的所有aplescript代码都已过时。 我是最新版的山狮
答案 0 :(得分:0)
尝试:
set myFolder to (choose folder)
tell application "Finder" to set myFiles to files of myFolder as alias list
repeat with aFile in myFiles
set bName to my baseName(aFile)
tell application "Finder"
set folderExists to exists folder bName of myFolder
if not folderExists then make new folder at myFolder with properties {name:bName}
move aFile to folder bName of myFolder
end tell
end repeat
on baseName(myFile)
tell application "System Events" to set {fileName, fileExt} to {name, name extension} of myFile
return text 1 thru ((get offset of "." & fileExt in fileName) - 1) of fileName
end baseName
修改
set myFolder to findFolder()
tell application "Finder" to set myFiles to files of myFolder as alias list
repeat with aFile in myFiles
set bName to my baseName(aFile)
tell application "Finder"
set folderExists to exists folder bName of myFolder
if not folderExists then make new folder at myFolder with properties {name:bName}
move aFile to folder bName of myFolder
end tell
end repeat
---------------- HANDLERS ----------------
on baseName(myFile)
tell application "System Events" to set {fileName, fileExt} to {name, name extension} of myFile
return text 1 thru ((get offset of "." & fileExt in fileName) - 1) of fileName
end baseName
on findFolder()
activate application "SystemUIServer"
-- Bug pointed out by Lauri Ranta http://www.openradar.me/9406282
tell application "Finder"
activate
set mySelection to (get selection)
if mySelection ≠ {} then
set mySelection to first item of (get selection)
if mySelection's class = folder then
set currentFolder to mySelection
else if mySelection's class = document file then
set currentFolder to parent of mySelection
else if mySelection's class = alias file then
set currentFolder to original item of mySelection
end if
else
set currentFolder to target of front Finder window
end if
end tell
return (currentFolder as alias)
end findFolder