這篇文章主要介紹的是 Bash,希望各位能從這篇文章里對 Bash 有一個簡單的了解

Bash 是什麼

Bash,即 Bourne Again SHell,顧名思義它是和 Shell 有關的。Shell是一個程序,就像你在 Windows 裡面經常按的 cmd 一樣,你可以在裡面輸入命令運行,或者自己寫一個腳本然後讓 Shell 讀取裡面的命令運行。

Shell

Shell 實際上不只是一個程序。它原先只是一個用 C 寫成的程序,現在同樣也代表一種腳本語言。而作為腳本語言,Shell 就需要解釋器,一般來說 Linux 默認的解釋器就是 Bash,不管是從命令行中直接輸入的命令還是腳本的命令,都需要經過 Bash 的解釋才能運行。

解釋和編譯

實際上絕大多數的程序設計語言都需要使用這兩種相當於預處理工序中的一種。編譯型的語言比如 C++ 和 Java 這些會把我們寫的代碼編譯成接近計算機底層的目標代碼,這樣運行起來會很快,但是因為太接近底層,所以有的時候需要更多的代碼來完成一個看起來簡單的操作。

而解釋型語言一樣會把我們的代碼解釋成目標代碼,不過這樣的目標代碼比較高層,我們編寫起來會比較方便,而且腳本執行的速度也不算太慢。

Shell 的種類

Shell 分為圖形界面和命令行式兩種,圖形界面最常見的就是 Windows explorer 了,它包括了桌面和文件管理,這就意味著如果你在任務管理器里把它關掉……你可能屏幕上上只剩下任務管理器是亮著的了,運行新任務然後輸入 explorer.exe 可以重新打開它。命令行式的 Shell 包括 Windows 裡面的 cmd.exe 和 Linux 裡面的 Bash 等等,它基本上只提供了一個命令行窗口,但是通過命令同樣可以做到比圖形界面更高效。

Bash 的功能

1、命令記錄歷史:Bash 可以記錄曾經輸入過的命令,保存在~/.bash_history 文件中。
2、tab 鍵自動補全:使用 tab 鍵可以自動補全命令或者目錄。
3、alias 命令別名:可以使用 alias ll='ls -al' 來設置命令的別名。
4、工作控制:可以將某些任務放在後台去運行。
5、程序腳本:可以執行 shell 腳本文件
6、通配符:除了完整的字元串之外, Bash 還支持許多的通配符來幫助用戶查詢與命令下達。

參考資料:

bash的基本語法

鳥哥的Linux私房菜-認識與學習BASH