Đặt iTerm2 làm trình xử lý ssh: // URL


44

Hiện tại, Terminal được thiết lập để xử lý các url SSH. Ví dụ: nếu tôi làm:

$ open ssh://machine.example.com

Sau đó, nó sẽ sinh ra một phiên SSH mới trong thiết bị đầu cuối. Tôi muốn những thứ này được mở trong iTerm2 thay thế. Làm cách nào để tôi bảo macOS sử dụng iTerm2 để xử lý URL ssh: // thay vì Terminal?


iTerm có thể làm điều này theo mặc định ngay bây giờ nhưng nếu bạn muốn hỗ trợ chức năng nâng cao hơn thể hiện sự quan tâm của bạn trên vé gitlab.com/gnachman/iterm2/issues/5813 .
sorin

Câu trả lời:


54

iTerm2 có thể tự đặt nó làm trình xử lý SSH mặc định. Trong tùy chọn của nó, hãy truy cập vào Prof Profiles. Tạo một hồ sơ để xử lý các phiên SSH hoặc chọn một phiên hiện có. Trong phần General General, phía dưới bên phải, bạn có thể chọn lược đồ URL mà cấu hình này sẽ xử lý:

Ảnh chụp màn hình của tùy chọn iTerm2, Phần chung của khung Cấu hình

Chọn SSH. iTerm2 sẽ hỏi liệu nó có tự thiết lập làm trình xử lý SSH mặc định không:

Ảnh chụp màn hình của iTerm2 yêu cầu xác nhận để tự thiết lập làm trình xử lý SSH mặc định

Xác nhận và bạn đã hoàn thành. Chúc mừng từ xa.


OK, bây giờ tôi phải tìm ra cách để iTerm mở một cửa sổ mới thay vì một tab mới, nhưng đó là một câu hỏi riêng biệt ...
Lorin Hochstein

1
Giao diện vẫn như cũ nhưng những thay đổi dường như chưa bao giờ có hiệu lực đối với tôi. Đây có nên vẫn là câu trả lời chính xác hay là một lỗi trong phiên bản hiện tại (v2.1.4)?
Jeff

2
Tương tự như @Jeff, tôi trải nghiệm sự thay đổi chỉ có hiệu lực trong một thời gian rất ngắn (nếu có). Sau đó Terminal tiếp quản lại.
stefanfoulis

1
Bạn cũng cần đặt Prefs> Profiles> General> Command thành $$.
user2551

Tôi đã có cùng một vấn đề của @stefanfoulis; Khắc phục sự cố này đã hoạt động, về cơ bản là để thiết lập lại LaunchService db:/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -all local,system,user
Tommaso

0

Đảm bảo bạn đã kéo ứng dụng iTerm2 trong thư mục Ứng dụng. Nếu bạn đặt iTerm2 làm trình xử lý thiết bị đầu cuối SSH, nó sẽ không lưu và sử dụng nó. Có vẻ như khi bạn gọi trình xử lý, nó chỉ xuất hiện trong Ứng dụng. Nếu nó không tìm thấy nó ở đó, nó sẽ mặc định cho trình xử lý hệ thống. Tôi đã chạy nó từ Tải xuống và nó sẽ không bao giờ lưu trình xử lý SSH. Khi tôi chuyển nó sang Ứng dụng, nó sẽ mở iTerm2 cho trình xử lý SSH mỗi lần.


Điều này dường như không hoạt động trên El Capitan. Tôi có iTerm bên dưới / Ứng dụng / nhưng tôi phải nhấp vào Lược đồ URL hai lần trở lên để thậm chí nhận được lời nhắc hộp thoại yêu cầu đặt iTerm làm mặc định, sau đó nó hoạt động chính xác một lần trước khi quay lại để mở trong Terminal.
iandoumund

@iandoureb Tôi đang có vấn đề sam. Bạn đã tìm ra một sửa chữa?
J Spen

@ j-spen Tôi đã không thử nó gần đây nhưng chỉ thử $ open ssh://hostname.comở đây tại nơi làm việc và nó vẫn ở lại iTerm2. Có lẽ đó là một lỗi họ đã sửa? Tôi đang sử dụng iTerm2 bản dựng 3.0.10 trên El Capitan và có vẻ như nó hoạt động tốt với tôi bây giờ. Tôi thậm chí đã tạo một liên kết href trên một trang để truy cập "ssh: //username@hostname.com" và Chrome đã nhắc tôi mở ứng dụng được liên kết và nó đã được chuyển đến iTerm 2.
iandoureb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.