SSH、shell、Xshell 、bash、Git、Git bash 、Git CMD、Git shell
1、SSH
- SSH(Secure Shell)安全外殼協議,由 IETF 的網路工作小組(Network Working Group)所制定;是建立在應用層和傳輸層基礎上的安全協議,是為 遠端登入會話 和其他 網路服務 提供安全性的協議,防止遠端管理過程中資訊洩露。
- SSH提供2種級別的安全驗證——基於口令和基於金鑰:
- 基於口令:使用IP和口令登入,需在網路上傳送口令,存在“中間人”攻擊的危險,但登入快;
- 基於金鑰:建立一對金鑰,把公用金鑰放在需要訪問的伺服器上,不需在網路上傳送口令,不存在“中間人”攻擊,但登入需約10s。
傳統的網路服務程式,如ftp、pop、telnet不安全,因為在網路上使用明文傳送口令和資料。
SSH僅僅是一 協議標準 ,其具體的實現有很多,既有開源實現的OpenSSH,也有商業實現方案。使用範圍最廣泛的是開源實現OpenSSH。
2、shell
- Shell按字面意思就是“殼”,是指一種應用程式,這個應用程式提供了一個介面,使用者通過這個介面訪問作業系統核心的服務。它接收使用者輸入的命令並把它送入核心去執行。
- Shell 指令碼(shell script),是一種為 shell 編寫的指令碼程式。
3、Xshell
- sarang.com/products/xsh_overview.html" target="_blank" rel="nofollow,noindex">Xshell 是一個強大的安全終端模擬軟體,它支援SSH1, SSH2, 以及Microsoft Windows 平臺的TELNET 協議。
- Xshell 是在Windows下遠端連線Linux主機的工具。
4、bash
- bash(born again shell)是shell的一種,最常用的shell之一。
- bash是大多數Linux系統以及Mac OS X預設的shell,它能運行於大多數類Unix風格的作業系統之上。
5、Git
- SVN是集中式版本控制系統,版本庫集中放在中央伺服器,必須聯網才能工作,幹活前首先要從中央伺服器那裡得到最新的版本,然後幹活,幹完活再把自己做完的活推送到中央伺服器。
- Git是分散式版本控制系統,每個人的電腦就是一個完整的版本庫,工作的時候不需要聯網。
6、Git bash 與 Git CMD
- Git bash是Windows下的命令列工具。
- 方便在windows下使用git命令的 模擬終端 (windows自帶的cmd功能太弱),而linux、unix可以直接使用git。

Git工具.png
第一個是視覺化圖形介面,第二個是CMD,第三個是Bash。
Git中的Bash是基於CMD的,在CMD的基礎上增添一些新的命令與功能。所以在使用的時候,Bash更加方便。本質上,git bash是一個封裝過的cmd命令列,並在其中加入了指向bash環境的環境變數。因此cmd命令列本身的環境變數它也有,自然就能使用dos命令了。但是在封裝的過程中,windows可能對呼叫自己cmd命令列控制元件的第三方應用設了限制,所以說是大部分可以用。
7、Git shell
- Git shell是安裝了git的shell,bash是shell的一種。