要在 Mac「快捷指令」中使用本地文本路径,可以通过命令行 -i 选项传入现有文件,也可以在 Finder 中找到文件或文件夹,然后将所选项目发送给快捷指令。这些有文档说明的方法保留了路径文本与文件输入之间的区别。

本指南介绍一项桌面操作:从一个路径名开始,将对应的现有项目传入快捷指令进行检查。Apple 明确说明,通过管道传入路径名会提供文本,而 -i 会将输入视为文件路径。对于文件夹,下面的 Finder 方法提供了一种有文档说明的替代方案,无需假设命令行对目录的行为未公开说明。从命令行运行快捷指令。

如何将路径文本转换为文件输入?

Apple 将 Text、Files 和 Folder 列为不同的快捷指令输入类型。路径名描述的是一个位置;此处的目标是获取该位置上的现有项目,以供接受该项目的操作使用。选择允许的输入类型后,便确定了快捷指令可以从其他 App 接收哪些内容。了解 Mac「快捷指令」中的输入类型。

此处引用的 Apple 官方页面并未说明可以在工作流程的任何位置,通用地将文本转换为文件或文件夹。它们确实说明了如何在快捷指令的入口处提供该项目。如果你的需求是专门在运行中的快捷指令内部进行转换,这些说明提供了一种受支持的替代方法,但并未声称已验证这种转换。

根据起点选择方法:

起点 此处使用的方法 项目进入「快捷指令」的位置
Terminal 中现有文件的路径名 使用 -i 运行快捷指令 Shortcut Input
现有文件夹的路径名 在 Finder 中导航并选择文件夹,然后运行快捷指令 Shortcut Input
桌面操作期间现有文件的路径名 导航到其上级文件夹并选择文件 Shortcut Input

准备临时示例和检查快捷指令

本指南仅使用新建的虚构内容。在 Finder 中打开个人文件夹,并通过 File > New Folder 创建一个名为 Shortcuts Path Demo 的文件夹。在其中再创建一个名为 Sample Folder 的文件夹。Apple 说明了如何在 Finder 中选定的位置使用此命令创建文件夹。如果其中任一名称已存在,请另取一个新名称,并相应调整后续示例。在 Mac 上整理文件夹中的文件。

接下来,在「文本编辑」中新建文稿,只输入 Sample text for a path test.。选择 Format > Make Plain Text,然后选择 File > Save。将文件保存为 Sample Note.txt,放在新建的 Shortcuts Path Demo 文件夹中。继续之前,请在 Finder 中确认保存后的名称。「文本编辑」的文档说明了如何转换为纯文本以及选择保存位置。在 Mac 上创建、打开和转换「文本编辑」文稿。

在「快捷指令」中创建名为 Inspect Local Item 的快捷指令。使用工具栏中的添加按钮输入名称,然后在操作库中搜索并添加 View Content Graph 操作。Apple 说明了如何手动创建快捷指令和添加操作;其输入类型指南还特别建议创建一个只包含 View Content Graph 的快捷指令,以检查其他 App 提供的内容。在 Mac 上创建自定快捷指令、了解 Mac「快捷指令」中的输入类型。

打开快捷指令的 Details 并启用 Use as Quick Action,然后启用 Finder。在编辑器顶部的输入声明中,点按当前输入类型,并保留文件和文件夹输入。将 View Content Graph 连接到 Shortcut Input。Apple 指出,在 Finder 中使用前可能需要启用文件或文件夹输入。在 Mac 上工作时运行快捷指令。

要运行无输入的快捷指令,请在输入声明中选择 Stop and Respond,并输入 Select a sample file or folder first.。这样可以明确说明此演示的前提,避免工作流程在变量为空时继续运行。Apple 也为这种响应以及其他空输入处理方式提供了文档说明。在 Mac 上从其他 App 运行快捷指令时限制其输入。

从 Terminal 传入现有文件路径

保存示例文件并创建快捷指令后,在 Terminal 中运行以下命令。它是适用于上述示例配置的完整调用:

shortcuts run "Inspect Local Item" -i "$HOME/Shortcuts Path Demo/Sample Note.txt"

即使路径名包含空格,加上引号后仍会作为整体处理。Apple 的 Terminal 指南介绍了路径名的引号用法,「快捷指令」命令行指南则说明了 -i 选项。在扩展快捷指令之前,先检查图表中接收到的内容。此命令依据文档编写,本文未在 Mac 会话中执行。在 Mac 上的 Terminal 中指定文件和文件夹、从命令行运行快捷指令。

如果要使用另一个临时文件,请在 Finder 中获取其实际路径名:右键点按该项目,按住 Option,然后选择名称以 as Pathname 结尾的命令。将该路径名作为 -i 后面的带引号参数。复制路径名可以避免手动拼接文件夹名称。在 Mac 上的 Terminal 中指定文件和文件夹。

请将参数紧跟在 -i 后面;通过管道将路径名传入命令会提供文本。本演示也只处理一个明确指定的文件。Apple 支持多个路径和通配符,但这会引入超出此单项目任务范围的额外输入项。从命令行运行快捷指令。

将文件夹路径名转换为选定的 Finder 输入

对于示例文件夹,切换到 Finder 并选择 Go > Go to Folder。输入 ~/Shortcuts Path Demo/,然后按 Return。在打开的窗口中选择 Sample Folder。Apple 说明了如何输入或粘贴文件夹路径名,包括使用 ~ 表示个人文件夹。在 Mac 上直接前往特定文件夹。

运行快捷指令前,请先选中该文件夹。导航到它的上级文件夹后,便可轻松选中它:要传入的项目会显示在窗口中。对于文件,使用相同的步骤打开其上级文件夹,然后选中该文件。

选中示例项目后,使用 Finder 的 Action 弹出式菜单,选择 Services > Inspect Local Item。Apple 也说明了如何通过所选项目的 Quick Actions 菜单运行已启用的快捷指令。检查快捷指令生成的输入图表。在 Mac 上工作时运行快捷指令。

这是一种桌面交接方式:Finder 根据导航路径找到项目,所选项目随后成为快捷指令的输入。此方法需要手动选择项目,无法在现有快捷指令内部自动转换。如果实际目标是开始处理已知文件夹,并且不依赖未经验证的转换方法,可以使用此方法。

检查类型、缺失项目和名称冲突

添加实际处理步骤前,请检查下一项操作的输入和输出说明。在操作库中,将指针悬停在某项操作上并点按信息按钮。对于已添加到工作流程中的操作,请按住 Control 并点按其图标,然后选择 Show Info。Apple 说明,这些描述包含可接受的输入和生成的输出。请确保收到的项目符合这些要求。在 Mac「快捷指令」中浏览操作列表。

如果交接结果不符合预期,请按以下顺序排查:

  1. 确认临时项目仍存在于 Finder 中,并且其名称与提供的路径名一致。
  2. 对于 Terminal 输入,确认路径名位于 -i 后面,并且当路径名包含空格时,使用英文直引号括起。
  3. 对于 Finder 输入,确认已选中该项目,并且快捷指令接受相应的文件或文件夹类型。
  4. 在连接下游操作之前,先检查 Shortcut Input。Apple 建议使用 View Content Graph 查看收到的内容,并在操作之间插入 Quick Look 检查内容流。了解输入类型、测试操作。

请将项目是否存在和是否创建视为两项不同的要求。这些示例都使用已保存的项目;仅提供计划创建的未来文件的路径名并不能满足此先决条件。如果重命名或移动了示例,请重新复制其路径名后再进行测试。

检查工作流程不包含保存、移动或重命名步骤,因此无需制定目标位置冲突策略。准备示例时,如果名称已被占用,请另取一个新名称。如果之后添加了写入文件的操作,请单独检查该操作的文档选项;本指南并未说明覆盖或自动重命名的行为。

图表显示了所需项目后,将 Shortcut Input 直接连接到文档说明其可接受该项目的操作。对于现有文件路径,命令行入口最简便。对于常见的桌面文件夹任务,通过 Finder 选择项目可以使用有文档说明且结果可供检查的交接方式。

来源