删除动态文件夹中的JPG

时间:2018-06-12 12:42:02

标签: applescript automator

我需要一个可以从动态文件夹路径中删除jpgs的自动播放器操作。

基本上我想要做的是将动作附加到“模板”文件夹,然后为每个拍摄照片复制/粘贴该文件夹。然后,任何加载到新文件夹中的jpgs都将被删除。

这可能吗?真的不知道从哪里开始。

1 个答案:

答案 0 :(得分:0)

使用Automator创建文件夹操作:

以下步骤描述了如何实现此目标

  1. 启动Automator。
  2. 输入⌘N,或选择File>菜单栏中显示New
  3. 选择Folder Action,然后点击选择
  4. 位于画布顶部,旁边显示"文件夹操作接收添加到" 的文件和文件夹
    • 从下拉菜单中选择Other
    • 找到 Template 文件夹(即您要将操作附加到的文件夹)。
    • 点击选择
  5. 选择左侧面板/列顶部的Library
    • 在搜索字段中键入:获取文件夹内容并将Get Folder Contents操作拖到画布区域。
    • 为找到的每个子文件夹启用" Repeat" 复选框Get Folder Contents操作的顶部(即刚刚添加到画布区域的那个)
  6. 再次选择左侧面板/列顶部的Library

    • 在搜索字段中键入:过滤器查找器项并将Filter Finder Items操作拖到画布区域。将其放在先前添加的Get Folder Contents操作下方。
    • 在刚刚添加到画布区域的Filter Finder Items操作中,如下图所示对其进行配置:

      enter image description here

      注意:文件扩展名设置为jpg

  7. 再次选择左侧面板/列顶部的Library

    • 在搜索字段中键入:将Finder项目移至废纸篓并将Move Finder Item To Trash操作拖动到画布区域。将其放在先前添加的Filter Finder Items操作下方。
  8. 输入⌘S,或选择File>菜单栏中显示Save。让我们将文件命名为delete-jpegs

    该文件将保存在:

    ~/Library/Workflows/Applications/Folder Actions/
    
  9. 使用文件夹操作:

    在您保存名为delete-jpegs的Automator文件后(根据上面的第8步),您可以开始添加图像文件(或任何文件/文件夹),您在步骤4中选择的 Template 文件夹。具有.jpg文件扩展名的任何文件现在都将移动到 Trash (可能有稍微延迟,直到触发文件夹操作)

    在其他目标文件夹上重复使用文件夹操作:

      

    ...将动作附加到"模板"文件夹,然后为每个photoshoot复制/粘贴该文件夹。

    通过macOS复制文件夹时,将删除已配置的文件夹操作。所以你不能"复制/粘贴每个photoshoot" 的文件夹。

    但是,您可以在另一个/新文件夹上添加/启用delete-jpegs文件夹操作。要做到这一点:

    1. Finder 中, Ctrl + 点击另一个/新文件夹上的以显示上下文菜单,然后选择Services> Folder Actions Setup
    2. 当您提示"选择要附加的脚本" 时:
      • 从列表中选择delete-jpegs.worflow
      • 点击附加
    3. 您应该在"文件夹操作设置" 窗口中看到两列。
      • 左侧的列列出了附加操作的文件夹
      • ,右侧的列列出了与每个文件夹关联的操作。
      • 可以通过切换复选框来启用/禁用每个项目。
    4. 清空垃圾箱:

      您已经注意到,到目前为止,.jpg图片仅移至已删除邮件,而不会被删除。要实际清空 Trash ,您需要使用Automator将另一个操作/步骤添加到画布区域,如下所示:

      1. 在第7步(上方)之后,再次选择左侧面板/列顶部的Library

        • 在搜索字段中键入:运行AppleScript 并将Run AppleScript操作拖到画布区域,将其放在Move Finder Item To Trash操作下方。
        • 使用以下AppleScript代码完全替换Run AppleScript操作中的默认脚本:

          tell application "Finder"
              empty trash
          end tell
          
      2. 要保存编辑,请键入⌘S,或选择File> Save

      3. 警告: 此最后一个操作/步骤将清空废纸篓 - 包括可能已存在且尚未由自定义delete-jpegs文件夹操作添加的任何文件/文件夹。

        供参考:

        下面概述了画布区域中预期的操作顺序:

        ┌─────────────────────────────────────────┐
        │                                         │
        │    Folder Action receives files         │
        │    and folders added to FOLDER_NAME     │
        │                                         │
        ├─────────────────────────────────────────┤
        │                                         │
        │  ┌───────────────────────────────────┐  │
        │  │ Get Folder Contents               │  │
        │  ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤  │
        │  │ ✔ Repeat for each subfolder found │  │
        │  └─────────────────┬─────────────────┘  │
        │                    │                    │
        │  ┌─────────────────┴─────────────────┐  │
        │  │ Filter Finder Items               │  │
        │  ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤  │
        │  │ Find files where:                 │  │
        │  │ All of the following are true     │  │
        │  │    File extension is jpg          │  │
        │  └─────────────────┬─────────────────┘  │
        │                    │                    │
        │  ┌─────────────────┴─────────────────┐  │
        │  │ Move Finder Items to Trash        │  │
        │  └─────────────────┬─────────────────┘  │
        │                    │                    │
        │  ┌─────────────────┴─────────────────┐  │
        │  │ Run AppleScript                   │  │
        │  ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤  │
        │  │  tell application "Finder"        │  │
        │  │    empty trash                    │  │
        │  │  end tell                         │  │
        │  └───────────────────────────────────┘  │
        │                                         │
        └─────────────────────────────────────────┘