2010-08-26 85 views
4

我在OS X下使用的終端非常廣泛。視覺區分本地和遠程終端會話

我覺得很煩人(也有點危險),我的本地和遠程會話在終端中看起來完全一樣。我想知道是否有可能 - 可以通過一些bash編程 - 清楚地區分本地和遠程會話。不同的背景顏色將是一個了不起的開始。

注意:我不確定在這裏或在超級用戶發佈此問題。它可能會涉及一些bash編程,並且可能會讓很多開發人員感興趣,所以我最終選擇了Stack Overflow。如果你認爲我應該將它移動到SU,請發表評論...

回答

0

這是Leopard和Snow Leopard的建議(我沒有Tiger來驗證它是否有效)。

  1. 在終端首選項中,選擇設置選項卡,並創建一個具有不同背景的新設置並將其命名爲遠程主機。
  2. 單擊外殼標籤按鈕,檢查運行命令框並輸入ssh命令以連接到遠程主機
  3. 現在您可以單擊終端的Shell菜單(頂部),選擇New Window或New Tab,選擇您剛創建的設置。
1

我已經尋找了一個程序化的方式來從殼本身做到這一點(我有很多不同的本地用戶,像postgres,甲骨文等東西)。

看起來你可以通過AppleScript的(這考慮到這坐落在一個基本的腳本框架上表明,它應該可以做別的東西)做。

http://www.red-sweater.com/blog/220/random-color-terminal

一些進一步深挖打開了這一點 - osascript顯然是命令行訪問的AppleScript。這裏列出了幾種方法,但它確實看起來像是一種以編程方式從終端內更改活動終端窗口的方式(所以如果不是遠程登錄,您應該能夠在登錄時更改本地會話)。

http://hints.macworld.com/article.php?story=20040823015557368

這樣做可能是包裹腳本來打開SSH會話特定顏色終端,並創建一個單獨的圖標的第三條道路。

0

在Terminal.app,可以用於連接到不同的主機創建用於每一個使用不同的設置值,即不同顏色的背景或其它特徵或運行不同的應用程序。 iTerm中的配置文件功能提供了類似的功能,可能更易於使用或更透明。由於您可以在使用設置或配置文件時運行腳本,因此可以通過附加適當的腳本來完成任何終端外觀更改。

另外,還可以設置提示出現在.bashrc中調節不同PS1或/ etc/bashrc中(或本地版本)。有在What is your favorite Bash prompt?一個類似的問題(也是在StackOverflow上),告訴如何設置背景顏色以及文本顏色。我主要在.bashrc(或者主要是/ etc/bashrc)中調整文本顏色,並在Terminal/iTerm設置/配置文件中設置背景。

由於通常只有極少數的用戶,並且我們普遍認爲bash提示應該是什麼樣子,所以我喜歡在/ etc中使用全局設置。在某些系統上,不鼓勵用戶直接更改/ etc/bashrc,而是提供有關創建/etc/bash.bashrc.local等的線索。其他系統沒有全局默認值。對於沒有全局缺省的系統,我創建了一個調用/etc/bash.bashrc.local的/ etc/bashrc,但幾乎沒有其他的東西。

而且,之前的回答指出Terminal.app中的設置適用於Leopard和Snow Leopard,但對Tiger沒有把握。我在小牛隊中使用了這個功能,我相信獅子和山獅是完全相同的。