Mac Automator - 合并PDF文件,保存在同一文件夹中

use*_*lem 2 pdf directory macos automator

我正在使用Automator来组合PDF文件,但无法弄清楚如何自动将生成的文件保存到同一文件夹.(相反,它会问我把文件放在哪里.)

我正在使用它作为服务 - 这是我现有的工作流程:

1)服务接收选定的-PDF文件 - 在 - 任何应用程序 -
2)组合PDF页面[附加页面]
3)重命名Finder项目:名称单项[名称单项,仅基名,到"TestResults"]
4)移动查找项目[到文件夹 - 工作流程运行时显示操作]

理想情况下,我喜欢结果文件:

- 根据(它所在的文件夹)+(附加的静态字符串)命名
- 保存在文件所在的文件夹中


我已经看到了人们正在获取和设置变量值的其他解决方案,但是当我尝试时,似乎我只是命名变量,而不是实际告诉程序在哪里获取值.

(就我而言,我正在创建一个名为"folderPath"的变量,并尝试将其传递给Move Finder Items操作.)

drt*_*ofu 6

感谢jweaks的剧本.超级有益和优雅.

我找到并修复了一个小bug:

我得到了他的工作流程,将文件放在与原始PDF相同的文件夹中,而不是放在桌面上,调整Applescripts与Finder交谈(而不是系统事件)并返回别名,这似乎是Move Finder项目的内容.期待:

所以…

  1. 服务在Finder中接收PDF文件
  2. 设置变量值:originalPDFs
  3. 运行Applescript:

修订后的Applescript:

on run {input}
    tell application "Finder" to return (container of item 1 of input) as alias
end run
Run Code Online (Sandbox Code Playgroud)
  1. 设置变量值:containerAlias
  2. 运行Applescript:

修订后的Applescript 2

on run {input, parameters}
    -- the input is the enclosing folder which was output from the previous Applescript
    tell application "Finder" to return name of (item 1 of input) 
end run
Run Code Online (Sandbox Code Playgroud)
  1. 设置变量值:containerName

  2. 获取变量的值:originalPDFs; 选择选项>"忽略此操作的输入"

  3. 合并PDF页面
  4. 重命名Finder项目:名称单项,仅限Basename,containerName"(合并)"
  5. 移动Finder项目:容器别名

希望这有帮助...我相信我会在几年内再次查看这个答案:)

这是一个截图:

修改工作流程


jwe*_*aks 5

没有自动操作来获取文件容器的名称,也没有操作来获取文件容器的路径,因此您可以将它们设置为变量。因此,您必须使用 Applescript 操作来获取其中每一个。以下是完成您所要求的工作自动化工作流程的示例,假设您将其放置在接受 PDF 的服务中。

行动1 行动2 行动3