Automator脚本使用相对路径将文件移动到子文件夹

时间:2013-06-28 11:51:18

标签: osx-lion mkdir automator mv

我刚接触编码并使用Mac OSX Lion。 我目前正在尝试创建一些shell脚本作为Automator中“文件夹操作”的一部分运行。 它的工作是将丢弃的文件放入该文件夹并将其移动到子文件夹中。

MYDIR="${HOME}/Desktop/Documents/Images" 
mkdir "${MYDIR}" 
mv "$@" "${MYDIR}"

我正在使用的脚本运行良好,但是我希望它能在不指定代码中的绝对路径(“$ {HOME} / Desktop / Documents / Images”)的情况下运行,而是指定当前文件夹的相对路径。 这将允许我在其他文件夹上使用相同的“文件夹操作”功能。

任何帮助都将非常感激。 谢谢

2 个答案:

答案 0 :(得分:0)

MYDIR="./Documents/Images"
mkdir "${MYDIR}" 
mv "$@" "${MYDIR}"

单点。表示当前目录。

我相信在您调用mkdir时,如果该目录尚不存在,您只希望这样做。

- 凯德尔 http://learnbymac.com

答案 1 :(得分:0)

将此AppleScript添加到“〜/ Library / Scripts / Folder Action Scripts”。如果“Folder Action Scripts”文件夹不存在,请创建一个。

on adding folder items to theFolder after receiving theFiles
    -- Create Subfolders
    do shell script "mkdir -p " & (quoted form of (POSIX path of theFolder)) & "{\"Subfolder 1\",\"Subfolder 2\"}"

    -- Examples of how to move files
    tell application "Finder"
        duplicate theFiles to folder ((theFolder as text) & "Subfolder 1")
        move theFiles to folder ((theFolder as text) & "Subfolder 2")
    end tell
end adding folder items to