這篇文章主要介紹的是 Bash,但願各位能從這篇文章裏對 Bash 有一個簡單的瞭解html
Bash 是什麼linux
Bash,即 Bourne Again SHell,顧名思義它是和 Shell 有關的。Shell是一個程序,就像你在 Windows 裏面常常按的 cmd 同樣,你能夠在裏面輸入命令運行,或者本身寫一個腳本而後讓 Shell 讀取裏面的命令運行。shell
Shellbash
Shell 實際上不僅是一個程序。它原先只是一個用 C 寫成的程序,如今一樣也表明一種腳本語言。而做爲腳本語言,Shell 就須要解釋器,通常來講 Linux 默認的解釋器就是 Bash,不論是從命令行中直接輸入的命令仍是腳本的命令,都須要通過 Bash 的解釋才能運行。命令行
解釋和編譯設計
實際上絕大多數的程序設計語言都須要使用這兩種至關於預處理工序中的一種。編譯型的語言好比 C++ 和 Java 這些會把咱們寫的代碼編譯成接近計算機底層的目標代碼,這樣運行起來會很快,可是由於太接近底層,因此有的時候須要更多的代碼來完成一個看起來簡單的操做。htm
而解釋型語言同樣會把咱們的代碼解釋成目標代碼,不過這樣的目標代碼比較高層,咱們編寫起來會比較方便,並且腳本執行的速度也不算太慢。字符串
Shell 的種類get
Shell 分爲圖形界面和命令行式兩種,圖形界面最多見的就是 Windows explorer 了,它包括了桌面和文件管理,這就意味着若是你在任務管理器裏把它關掉……你可能屏幕上上只剩下任務管理器是亮着的了,運行新任務而後輸入 explorer.exe 能夠從新打開它。命令行式的 Shell 包括 Windows 裏面的 cmd.exe 和 Linux 裏面的 Bash 等等,它基本上只提供了一個命令行窗口,可是經過命令一樣能夠作到比圖形界面更高效。cmd
Bash 的功能
一、命令記錄歷史:Bash 能夠記錄曾經輸入過的命令,保存在~/.bash_history 文件中。
二、tab 鍵自動補全:使用 tab 鍵能夠自動補全命令或者目錄。
三、alias 命令別名:可使用 alias ll=’ls -al’ 來設置命令的別名。
四、工做控制:能夠將某些任務放在後臺去運行。
五、程序腳本:能夠執行 shell 腳本文件
六、通配符:除了完整的字符串以外, Bash 還支持許多的通配符來幫助用戶查詢與命令下達。