Automator (2.5) 基于文件名创建文件夹并将文件移动到文件夹的脚本
Automator (2.5) Script to create folder based on file name and move file to folder
感谢您抽空查看。我正在尝试使用 automator 2.5 创建一个工作流程,它将读取我目录中的视频文件,创建一个具有文件名的文件夹,并将文件移动到新创建的文件夹中。我尝试了多个在线可用的脚本并遇到了错误。然后我创建了这个不会出错或做任何事情的混合脚本。任何帮助将不胜感激(我不是编程新手,但对这个版本的自动化程序没有经验)
在前面的 Finder window 中选择您的文件后,运行 脚本中的以下代码 Editor.app 应该可以实现您想要实现的目标
tell application "Finder"
activate
set selectedFiles to selection as alias list
set containingFolder to container of (item 1 of selectedFiles) --as alias
repeat with i from 1 to count of selectedFiles
set foldersRef to (a reference to folders of containingFolder)
set foldersRefItems to name of (contents of foldersRef)
set thisItem to item i of selectedFiles
set fileName to (text items 1 thru -5) of (name of thisItem as text) as string
if fileName is not in foldersRefItems then
move thisItem to (make new folder at containingFolder ¬
with properties {name:fileName})
else
move thisItem to folder fileName of containingFolder
end if
end repeat
end tell
感谢您抽空查看。我正在尝试使用 automator 2.5 创建一个工作流程,它将读取我目录中的视频文件,创建一个具有文件名的文件夹,并将文件移动到新创建的文件夹中。我尝试了多个在线可用的脚本并遇到了错误。然后我创建了这个不会出错或做任何事情的混合脚本。任何帮助将不胜感激(我不是编程新手,但对这个版本的自动化程序没有经验)
在前面的 Finder window 中选择您的文件后,运行 脚本中的以下代码 Editor.app 应该可以实现您想要实现的目标
tell application "Finder"
activate
set selectedFiles to selection as alias list
set containingFolder to container of (item 1 of selectedFiles) --as alias
repeat with i from 1 to count of selectedFiles
set foldersRef to (a reference to folders of containingFolder)
set foldersRefItems to name of (contents of foldersRef)
set thisItem to item i of selectedFiles
set fileName to (text items 1 thru -5) of (name of thisItem as text) as string
if fileName is not in foldersRefItems then
move thisItem to (make new folder at containingFolder ¬
with properties {name:fileName})
else
move thisItem to folder fileName of containingFolder
end if
end repeat
end tell