2

基本的に、Automator でフォルダー アクションを作成しようとしているので、ファイルが特定のフォルダーに追加されるたびに、ファイル名 (拡張子なし) に一致するサブフォルダーが作成され、そのサブフォルダーにファイルが移動されます。

これまでのところ、このサイトからの投稿 ( Automator で指定されたファイル名を持つ新しいフォルダーを作成する ) を使用して、新しいフォルダーを作成するスクリプトを作成することに成功しました。ただし、スクリプトを変更して元のファイルを新しいフォルダーに移動することはできませんでした。

どんな助けでも大歓迎です。参照用に使用している完全なスクリプトを次に示します。

    on run {input, parameters} -- make new folders from base file names

    set output to {}

    repeat with anItem in the input -- step through each item in the input

        set anItem to anItem as text
        tell application "System Events" to tell disk item anItem
            set theContainer to path of container
            set {theName, theExtension} to {name, name extension}
        end tell
        if theExtension is in {missing value, ""} then
            set theExtension to ""
        else
            set theExtension to "." & theExtension
        end if
        set theName to text 1 thru -((count theExtension) + 1) of theName -- the name part

        tell application "Finder"
            make new folder at folder theContainer with properties {name:theName}
            set end of output to result as alias
        end tell
    end repeat

    return input -- or output
end run

前もって感謝します!

4

1 に答える 1

3

このフォルダー アクションをターゲット フォルダーに追加します。

on adding folder items to theFolder after receiving theFiles
    repeat with aFile in theFiles
        tell application "System Events" to set {Nm, Ex, pPath} to aFile's {name, name extension, POSIX path of container}
        set BN to text 1 thru ((get offset of "." & Ex in Nm) - 1) of Nm
        set thePath to (pPath & "/" & BN & "/" as text)
        do shell script "mkdir -p " & quoted form of thePath
        delay 0.5
        tell application "Finder" to move aFile to POSIX file thePath
    end repeat
end adding folder items to
于 2012-06-27T12:09:45.483 に答える