在 Mac 上的项目文件之间切换时,关键是要区分“访达”中打开的文件夹与“终端”会话当前正在使用的文件夹。在“访达”中,显示路径栏以查看包含该文件的各级文件夹;在“终端”中,运行 pwd 来输出该 shell 当前的工作目录。需要复用时复制完整路径,并在切换窗口或标签页后再次检查上下文。

在“访达”中查看包含文件的各级文件夹

在“访达”窗口中,选取显示 > 显示路径栏。路径栏会显示在窗口底部附近,展示所选文件或文件夹的位置以及包含它的层级文件夹。点按路径栏中的某个文件夹即可将其打开。若要使用快捷键隐藏或显示该栏,请按 Option-Command-P。Apple 还记录了按住 Option 键可临时显示该栏的方法。Apple 的访达使用手册和 Mac 键盘快捷键介绍了这些操作控制。

当您直观地浏览项目文件并需要在不离开“访达”的情况下确定位置时,路径栏非常实用。例如,如果某个文稿位于 Client Work / Redesign / Research 中,该栏会为您显示包含它的文件夹层级结构。仅凭窗口标题中的文件名或“最近使用”列表,可能无法说明您打开的是哪个副本或哪个项目文件夹;在需要明确这一区别时,请使用包含路径。

若要从路径栏复制文件夹路径,请按住 Control 点按该文件夹,然后选取将“[文件夹]”拷贝为路径名称。您可以将结果粘贴到备忘录、“终端”命令或“访达”的前往 > 前往文件夹栏中。菜单用词可能会因 macOS 版本和语言环境而略有不同;如果看不到该完全一致的选项,请使用 Apple 记录的按住 Option 键点按“访达”上下文菜单的方法来将项目拷贝为路径名称。Apple 的终端使用手册说明了“访达”中结合 Option 键的上下文菜单可以拷贝文件或文件夹的路径名称。

在“终端”中检查当前文件夹

每个“终端”窗口都有自己的当前工作目录。它可能与“访达”中可见的文件夹不一致,而且各个不同的“终端”窗口或标签页可能位于不同的位置。点按您打算使用的“终端”标签页或窗口,键入 pwd,然后按 Return 键。该命令会输出该 shell 当前目录的绝对路径名称。macOS 的 pwd 手册对该输出进行了定义,并区分了 -L(逻辑路径)和 -P(解析了符号链接后的物理路径)。macOS pwd 手册页

例如,像 /Users/sam/Projects/website 这样的输出意味着使用相对路径的命令通常将从该目录开始解析。单个点(.)代表当前文件夹,两个点(..)代表其父文件夹,而 ~ 代表您的个人文件夹。这些快捷表示法很有用,但请记住它们是相对于 shell 上下文进行解释的,并不会告诉您打开的是哪个“访达”窗口。Apple 在其有关在“终端”中指定文件和文件夹的使用手册中介绍了这些路径惯例。

如果您需要的是特定“访达”项目的路径,而不是 shell 的当前目录,请将该文件或文件夹从“访达”拖入“终端”窗口中。“终端”会在光标处插入其绝对路径。您也可以从“访达”窗口的标题栏中拖动文件夹。这只会插入文本,本身不会运行命令。在按 Return 键之前请检查命令行,尤其是当您已经在键入其他命令时。Apple 关于将项目拖入“终端”的使用说明介绍了这一行为。

切换到正确的文件夹并进行验证

如果“终端”位于错误的项目目录中,请使用 cd 并在其后输入目标路径来更改目录,然后再次运行 pwd。例如,输入 cd 后,将项目文件夹从“访达”拖入“终端”窗口并按 Return 键。cd 后面的空格至关重要:它将命令与路径分隔开。在运行其他命令之前,随后运行 pwd 可以确认该“终端”会话最终停留在何处。

手动键入包含空格的路径时需要格外小心。Apple 指出,路径名称中的空格可能需要使用引号或反斜杠转义。因此,类似 /Users/sam/Projects/Client Site 的路径可以输入为 cd '/Users/sam/Projects/Client Site' 或 cd /Users/sam/Projects/Client\ Site。将文件夹拖入“终端”可以避免手动转义其名称,但在执行之前仍应检查插入的路径和命令。Apple 的路径名称指南提供了引号和转义的相关示例。

“访达”也可以跳转到已知位置:选取前往 > 前往文件夹,粘贴复制的路径,然后按 Return 键。开头的斜杠表示从文件系统顶层开始的路径;波浪号指向您的个人文件夹。Apple 指出,“访达”可以在您键入时提供匹配的或最近使用的路径。当您之前复制过某个路径并希望返回该位置时,这很有帮助,但它不会更改“终端”的当前目录。Apple 的“前往文件夹”使用说明涵盖了这些细节。

路径看似不正确的常见原因

“访达”与“终端”的位置不同。 它们代表不同的上下文。“访达”的路径栏展示的是所选项所在的包含层级结构;pwd 报告的是当前活动 shell 的工作目录。如果您切换了“终端”标签页,请点按预期的标签页并在其中运行 pwd。

您从“最近使用”或快捷方式中打开了文件。 窗口中可见的内容可能无法直观反映出项目根目录。请使用路径栏检查其包含的文件夹,如果其他地方需要用到根目录,则复制所需父文件夹的路径名称。请明确您所说的“项目文件夹”具体指什么:代码仓库根目录、单个子文件夹以及包含某个文件的文件夹都可能是不同的位置。

路径中包含符号链接。 默认的 pwd 输出使用的是逻辑当前目录;pwd -P 报告的则是解析了符号链接后的物理路径。当您进入目录的路径经过某个链接时,这两种输出可能会有所不同。请使用能解答您疑问的形式,并且不要因为路径更短或看起来更熟悉就认为“终端”位于不同的项目中。macOS pwd 手册记录了这一区别。

复制的是文件的路径,而不是其父文件夹的路径。 文件路径名称的末尾包含文件名。如果您想切换到包含它的目录中,请复制或拖动文件夹本身,或者在使用 cd 之前仔细删掉末尾的文件名。“访达”的路径栏在选择父文件夹方面特别有用,无需对着长路径靠猜测。

切换项目文件时的快速例行流程

在浏览时保持“访达”的路径栏可见。当您需要一个可复用的位置时,复制相关文件夹的路径名称或将该文件夹拖入“终端”。在“终端”中,在即将运行下一条命令的具体窗口或标签页中通过 pwd 进行验证。如果路径不熟悉,请在继续操作前将其末尾的文件夹名称与您预期的项目结构进行比对。这一小小的检查有助于防止使用相对路径的命令错误地作用于不正确的目录。

如果您按目标来整理打开的 Mac 窗口和待办事项,Wallo 可以帮助您将与项目相关的窗口整合在一起,让您专注于键盘操作。它不提供文件的路径名称报告,因此具体位置仍请使用“访达”或 pwd。

来源