将iTerm2设置为ssh:// URL处理程序


44

当前,终端设置为处理SSH URL。例如,如果我这样做:

$ open ssh://machine.example.com

然后它将在终端中产生一个新的SSH会话。我希望这些可以在iTerm2中打开。如何告诉macOS使用iTerm2处理ssh:// URL而不是终端?


iTerm现在可以默认启用,但如果您想支持更多高级功能,请在gitlab.com/gnachman/iterm2/issues/5813票证上显示您的兴趣。
索林

Answers:


54

iTerm2可以将自身设置为默认的SSH处理程序。在其首选项中,转到“配置文件”。创建一个配置文件以处理SSH会话,或选择一个现有的配置文件。在右下角的“常规”部分,您可以选择此配置文件应处理的URL方案:

iTerm2首选项的屏幕快照,“配置文件”窗格的“常规”部分

选择SSH。iTerm2将询问是否将其自身设置为默认的SSH处理程序:

iTerm2的屏幕快照,要求确认以将其自身设置为默认的SSH处理程序

确认并完成。快乐的远程处理。


好吧,现在我必须弄清楚如何使iTerm打开一个新窗口而不是一个新选项卡,但这是一个单独的问题……
Lorin Hochstein

1
界面仍然相同,但更改似乎从未对我生效。这应该仍然是正确的答案,还是当前版本(v2.1.4)中的错误?
杰夫

2
与@Jeff类似,我经历了仅在很短的时间内(如果有的话)生效的更改。然后终端再次接管。
stefanfoulis

1
您还需要将Prefs> Profiles> General> Command设置为$$
user2551 '16

我也遇到过@stefanfoulis的问题;修复程序有效,基本上是要重置LaunchServices数据库:/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -all local,system,user
Tommaso

0

确保已将iTerm2应用程序拖动到“应用程序”文件夹中。如果将iTerm2设置为SSH终端处理程序,它将不会保存或使用它。看来,当您调用处理程序时,它仅在应用程序中查找。如果找不到,它将默认为系统处理程序。我是从Downloads运行它的,它永远不会保存SSH处理程序。当我将其移至“应用程序”时,它每次都会为SSH处理程序打开iTerm2。


这似乎不适用于El Capitan。我在/ Applications /下有iTerm,但我必须单击URL方案两次或更多次,以获取要求将iTerm设置为默认值的对话框提示,然后它只能运行一次,然后恢复为在Terminal中打开。
iandouglas

@iandouglas我遇到了山姆问题。您找到解决办法了吗?
J Spen

@ j-spen我最近没有尝试过,但只是$ open ssh://hostname.com在这里工作过,它保留在iTerm2中。也许这是他们修复的错误?我在El Capitan上的iTerm2 build 3.0.10上运行,现在看来对我来说还可以。我还送一个href链接的页面,进入“SSH://username@hostname.com”和Chrome促使我打开关联的应用程序,它去的iTerm 2
iandouglas
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.