【问题标题】:Automator script to move files to sub-folders using relative paths使用相对路径将文件移动到子文件夹的 Automator 脚本
【发布时间】:2013-06-26 04:33:05
【问题描述】:

我是编码新手,正在使用 Mac OSX Lion。 我目前正在尝试创建一些 shell 脚本以作为 Automator 中“文件夹操作”的一部分运行。 它的工作是获取放入该文件夹的文件并将它们移动到子文件夹中。

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

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

任何帮助将不胜感激。 谢谢

【问题讨论】:

    标签: osx-lion mkdir automator mv


    【解决方案1】:
    MYDIR="./Documents/Images"
    mkdir "${MYDIR}" 
    mv "$@" "${MYDIR}"
    

    一个点。表示当前目录。

    我相信在您对 mkdir 的调用中,您只想在目录不存在时才这样做。

    -- 凯德尔 http://learnbymac.com

    【讨论】:

    • 您好,感谢您的快速响应...尝试使用此代码,但新文件夹仍在目录的下方(在 USER>JOHNDOE>NEW FOLDER 中)创建。而不是在文件夹的子目录中,我将文件放入(位于桌面上)。正如我所提到的,如果可能的话,我的目标是将文件移动到子目录中而不指定路径。非常感谢。
    • 试试这个:MYDIR="Documents/Images" 这是一个相对路径名。
    【解决方案2】:

    将此 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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-25
      • 2018-06-28
      • 1970-01-01
      • 1970-01-01
      • 2016-01-20
      • 2016-06-22
      • 2014-05-08
      相关资源
      最近更新 更多