前言
筆者今年年中將工作平臺從windows切換到了mac os。因為對mac系統不是太熟,在過渡期間,使用了mac下安裝虛擬機跑windows的臨時方案(使用Parallels Desktop)。隨著對mac系統的逐漸了解,我也逐漸找到了mac下對應windows軟體的代替品,但有一款軟體,一直沒找到合適的,就是SecureCRT。
本來以為secureCRT是我第一款更換的軟體,因為當時發現secureCRT有mac版本。誰知道剛打開軟體就傻眼了,連最基本的配置導入都沒有,而且各種bug,一句話,mac下的secureCRT不是我針對它,的確非常不好用。
考慮到在secureCRT上一大堆做了登錄腳本的配置文件,就還是一直使用的虛擬機方案,但為了這一款軟體就裝個windows虛擬機,佔空間不說,還消耗不少系統資源。利用國慶長假終於下定決定,將其替換掉!
替換要求
因為我是使用堡壘機再跳轉到伺服器上,所以我需要一款支持運行登錄腳本的替借品;第二是支持配置管理,因為筆者要管理的伺服器有上百臺,使用mac自帶的terminal很難滿足筆者的要求。
iTerm2經過一番搜尋和測試,最終我選擇了iTerm2作為secureCRT的替代品。一來它是開源的,二來口碑不錯,最主要的是能夠支持我的替換要求,但是要和mac下的一款命令行程序expect結合起來使用才能實現登錄腳本的功能。
image.png
安裝好軟體後,初進軟體,似乎和mac自帶的terminal看不出來太大的區別。人不可貌相,軟體也一樣,iTerm2的好多實用功能都隱藏在菜單欄裡。我們一起來看看吧。
會話主機配置筆者的100臺伺服器,就需要建立100個配置文件,可以先建立1個配置文件,然後快速複製,但每臺伺服器的登錄IP你得自己一一設置,偷不了懶。
image.png
點擊Profiles->Open Profiles,或者使用按快捷鍵cmd+O,彈出配置菜單
image.png
如果第一次進入配置界面,這裡會是空空如也,點擊「Edit Profiles」,彈出一個新窗口。
image.png
點擊「+」號即可新建一個配置文件,也可以隨時點減號刪除一個配置。在這裡我們只是進行了基本配置。如果你登錄伺服器並不需要堡壘機跳轉,那麼點擊command選項,並在其後的輸入框裡輸入內容,比如"ssh root@yourServerIP",其實就是運行一條命令行下的命令。
登錄腳本配置筆者因為使用了堡壘機跳轉,所以選擇的login shell,並在「Send text at start:」處填寫了一條命令"expect tx.exp"。expect是Mac系統自帶的一個小程序,功能是捕捉屏幕上出現的指定字符,如果滿足條件,就執行一系列的命令。
通過以上配置,我們就完成了1臺會話主機的配置,第1次配置的確稍微有點麻煩,但後面就簡單許多,只需依葫蘆畫瓢。配置好後,我們再次按cmd+o打開配置窗口。
image.png
剛才配置好的一個會話配置文件已經出現在了列表中,點擊"New Tab"或者"New Window"即可打開終端並執行我們事先寫好的腳本,即先登錄跳轉機,再通過跳轉機連接到目標伺服器。配置文件前面有個小五角星,表示默認要打開的會話配置文件。
強大的搜索功能按住cmd+shift+O,會彈出快捷會話配置列表窗口。
image.png
這個搜索功能相比secureCRT簡直是強大到離譜,可以根據你之前輸入的名稱或者標籤查詢,當你管理的會話配置列表超過50臺以上時,你就能感覺到他的確太好用了。+號表示開啟會話,人型圖標表示修改配置文件設置。我們點擊+號行試一試
image.png
可以看到已經正常登錄到了我的堡壘機。右邊框紅的「tx」也是之前在配置文件裡面做的設置,具體是Badge選項,當你打開多個會話窗口的時候,提示你每個窗口是屬於哪一個會話配置文件,很貼心的小功能。
廣播輸入功能
image.png
當你要在對多個會話窗口執行同一條命令,這個功能就派上用場了。你只需在其一個窗口輸入命令,其它窗口會根據你選擇的廣播範圍同步輸入命令。"Broadcast Input toAll Panes in All Tabs"就是開啟當前窗口所有的tab頁同步功能,再次點擊該選項即可關閉。
粘貼歷史命令功能
image.png
先選中「Paste History」功能,再按shift+cmd+B鍵,即可調出粘貼歷史命令窗口
image.png
之前複製到剪貼板的命令都出現在了右側的窗口上,使用滑鼠雙擊即可將命令填寫到當剪終端中,也是我覺得很實用的一個功能。
結語
iTerm作為一款代替secureCRT的軟體,我認為是合格的,特別是它的搜索功能,讓我愛不釋手,希望同樣在尋找類似軟體的你,可以試一試這款開源免費軟體。更多文章請訪問我的公 眾 號:Ted的技術樂園。