Derzeit ist Terminal so eingestellt, dass es SSH-URLs verarbeitet. Wenn ich zum Beispiel mache:
$ open ssh://machine.example.com
Dann wird eine neue SSH-Sitzung im Terminal erstellt. Ich möchte, dass diese stattdessen in iTerm2 geöffnet werden. Wie sage ich macOS, dass es iTerm2 verwenden soll, um ssh://-URLs anstelle von Terminal zu verarbeiten?
iTerm2 kann sich selbst als Standard-SSH-Handler festlegen. Gehen Sie in den Einstellungen zu „Profile“. Erstellen Sie ein Profil zur Handhabung von SSH-Sitzungen oder wählen Sie ein vorhandenes aus. Im Abschnitt „Allgemein“ unten rechts können Sie auswählen, welches URL-Schema dieses Profil behandeln soll:
Wählen Sie SSH aus. iTerm2 fragt, ob es sich selbst als Standard-SSH-Handler einrichten soll:
Bestätigen und fertig. Frohes Remoting.
$$
./System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -all local,system,user
Stellen Sie sicher, dass Sie die iTerm2-App in den Anwendungsordner gezogen haben. Wenn Sie iTerm2 als SSH-Terminal-Handler festlegen, wird es weder gespeichert noch verwendet. Es scheint, dass wenn Sie den Handler aufrufen, er nur in Anwendungen sucht. Wenn es dort nicht gefunden wird, wird standardmäßig der Systemhandler verwendet. Ich habe es über Downloads ausgeführt und es würde den SSH-Handler nie speichern. Als ich es in Anwendungen verschoben habe, öffnete es jedes Mal iTerm2 für den SSH-Handler.
$ open ssh://hostname.com
hier bei der Arbeit versucht und es blieb in iTerm2. Vielleicht ist es ein Fehler, den sie behoben haben? Ich bin auf iTerm2 Build 3.0.10 auf El Capitan und es scheint jetzt für mich in Ordnung zu sein. Ich habe sogar einen Href-Link auf einer Seite erstellt, um zu „ssh://username@hostname.com“ zu gehen, und Chrome hat mich aufgefordert, die zugehörige App zu öffnen, und sie ging zu iTerm 2.
sorin