Applescript Automator(2.5)脚本,用于根据文件名创建文件夹并将文件移动到文件夹

Applescript Automator(2.5)脚本,用于根据文件名创建文件夹并将文件移动到文件夹,applescript,automator,Applescript,Automator,谢谢你抽出时间来看我。我正在尝试使用automator 2.5创建一个工作流,该工作流将读取我目录中的视频文件,创建一个具有文件名的文件夹,并将文件移动到新创建的文件夹中。我尝试了多个在线可用的脚本,但遇到了错误。然后我创建了这个混合脚本,它不会出错或做任何事情。任何帮助将不胜感激我不是新的编程,但缺乏经验与这个版本的自动机 在front Finder窗口中选择您的文件后,在Script Editor.app中运行以下代码应该可以实现您希望实现的目标 tell application "Find

谢谢你抽出时间来看我。我正在尝试使用automator 2.5创建一个工作流,该工作流将读取我目录中的视频文件,创建一个具有文件名的文件夹,并将文件移动到新创建的文件夹中。我尝试了多个在线可用的脚本,但遇到了错误。然后我创建了这个混合脚本,它不会出错或做任何事情。任何帮助将不胜感激我不是新的编程,但缺乏经验与这个版本的自动机

在front Finder窗口中选择您的文件后,在Script 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

在我看来,直接在终端上做这件事要容易得多。只需更改目录cd。。。到包含.mov文件的文件夹,并使用以下命令:for f in*.mov;do mkdir-p${f%.*}&&mv-vn$f./${f%.*};完成说明:与往常一样,在执行任何将更改文件系统内容的操作之前,始终确保您有正确的备份。当我的文件扩展名都相同时,您的示例非常棒。有时我有多个同名但扩展名不同的文件。我很欣赏这种反应,但它让我考虑另一种方法。然后,使用F,**;你是上帝派来的。那很有效!我希望我能在你救了我的所有时间里投票数亿次,谢谢你!如果有两个同名的文件,并且允许将这两个文件都移动到文件夹中,有没有办法使脚本不出错?示例:File1.abc&File1.xyzI刚刚更新了我文章中的代码,因此如果有包含相同名称的文件,脚本将不会出错。如果您遇到其他问题,请告诉我谢谢。对于任何试图在Automator中执行此操作的人,只需将原始帖子中的Applescript代码替换为此处的答案即可。这也是一项服务,允许您直接从finder启动它。