Mac 中在当前访达目录打开终端

893 阅读2分钟

上周写了篇文章《Mac中通过自定义快捷键快速打开vscode项目》,让 mac 的文件或文件夹可以通过快捷键的方式用编辑器打开,但是还存在一点美中不足的地方,就是有时候需要在访达的目录下打开终端,比如当我们从网上克隆一个项目的时候,常常需要在本地的一个文件夹内打开终端来执行克隆的命令。举个例子来说:

假如我本地有一个 work 文件夹,存放工作的代码,此时我处于 work 文件夹内,我需要在 work 文件夹内打开终端来执行git clone,这个时候是没有文件或文件夹被选中的,所以是没有办法用之前的针对文件或文件夹快速操作的快捷键。所以我们需要另辟蹊径。

方法仍然是使用自动操作来实现,具体实现步骤如下:

创建 AppleScript 并绑定快捷键

1、 打开 Automator

  • 打开 Automator 应用,选择 “服务” 或 “快速操作”。

2、 配置服务类型

  • 在右侧的 “服务接收选定” 中,选择 “无输入”。
  • 在 “位于” 中选择 “Finder”。

3、 添加 AppleScript

  • 在左侧搜索栏中搜索并选择 “运行 AppleScript”,然后将其拖动到右侧工作区。
  • 替换默认的 AppleScript 内容为以下代码:
tell application "Finder"
    set currentFolderPath to (POSIX path of (target of front window as alias))
end tell
tell application "Terminal"
    do script "cd '" & currentFolderPath & "'"
    activate
end tell
  • 这个脚本会获取当前 Finder 窗口所在的路径,并在该路径下打开终端。

4、 保存服务

  • 点击菜单栏中的 文件 > 存储,为这个服务起一个名字,比如 在当前 Finder 目录打开终端
  • 这样就创建了一个能在当前 Finder 目录打开终端的服务。

5、 设置快捷键

  • 打开 系统偏好设置,选择 键盘
  • 转到 快捷键 -> 服务
  • 找到刚刚创建的 在当前 Finder 目录打开终端,点击它旁边的空白区域,并设置一个快捷键。这里我用的是 ⌃ + ⌥ + t

注意

  • 并不是所有的 app 都支持AppleScript,必须是支持do script命令的 app 才能使用这种方式,一些终端(如 iTerm2)和标准的 macOS Terminal 都支持 do script,但 Warp 不支持。

使用方法

现在,当你在 Finder 中浏览某个目录(即使没有选中任何文件或文件夹),只需按下你设置的快捷键,就会在当前目录下打开一个终端窗口。然后就可以愉快的 clone 啦,掌握快捷键,clone 快人一步,具体效果如下: