linux shell有哪些類型
在linux中,shell是指一個面向使用者的命令接口,表現形式就是一個可以由使用者錄入的介面,這個介面也可以回饋運行資訊。 Shell是Linux作業系統中的解釋器程序,它負責接收使用者輸入的命令並將其傳遞給核心進行執行。 Bourne Again shell(bash)是Linux系統的預設shell。
linux shell介紹
Linux中的shell,是指一個使用者導向的命令接口,表現形式就是一個可以由使用者錄入的介面,這個介面也可以反饋運行資訊;
Shell是一種接口,它連接了用戶和內核,使用戶能夠與系統進行互動操作。它接收用戶輸入的命令並把它送入內核去執行。是在Linux核心與使用者之間的解釋器程序,現在Linux通常指/bin/bash解釋器來負責向核心翻譯以及傳達使用者/程式指令,shell相當於作業系統的「外殼」
Linux系統提供多種不同的Shell以供選擇。在Linux系統中,預設的Shell是Bourne Again Shell(bash)。
shell在Linux中的存在形式:
由於Linux不同於Windows,Linux是核心與介面分離的,它可以脫離圖形介面而單獨運行,同樣也可以在核心的基礎上運行圖形化的桌面。
這樣,在Linux系統中,就出現了兩種shell表現形式,一種是在無圖形介面下的終端機運行環境下的shell,另一種是桌面上運行的類似Windows 的MS -DOS運行窗口,前者我們一般習慣性地簡稱為終端,後者一般直接稱為shell
#linux常用的三種shell
Linux中的shell有多種類型,其中最常用的三種是bourne shell(sh)、c shell(csh)、korn shell(ksh)。
1、Bourne shell
Bourne shell 是一個交換式的命令解釋器和命令程式語言。
Bourne shell曾經作為管理系統的常用工具,是UNIX作業系統的標準shell。大部份的系統管理指令文件,例如 rc start、stop 與shutdown 都是Bourne shell 的指令檔,且在單一使用者模式(single user mode)下以 root 簽入時它常被系統管理者使用。 Bourne shell因其簡潔高效而聞名,它是由AT&T開發的。 Bourne shell 提示符號的預設值是 $。
2、c shell
c shell是比Bourne Shell更適合的變種Shell,使用的是「類別C」語法,csh是具有C語言風格的一種shell,其內部指令有52個,較為龐大。
C shell 是柏克萊大學(Berkeley)所開發的,且加入了一些新特性,如命令列歷程(history)、別名(alias)、內建算術、檔名完成(filename completion )、和工作控制(job control)。對於常在交談模式下執行shell 的使用者而言,他們較喜愛使用C shell;但對於系統管理者而言,則較偏好以Bourne shell 來做命令檔,因為Bourne shell 指令檔比C shell 指令檔來的簡單快速。 C shell 提示符號的預設值是 %。
3、korn shell
korn shell是一個 Unix shell 。在1980年代早期,David Korn在貝爾實驗室編寫了它。它完全向上相容 Bourne shell 並包含了 C shell 的許多特性,例如貝爾實驗室用戶需要的命令編輯。
Korn shell 是Bourne shell 的超集(superset),由 AT&T 的 David Korn 所開發。它增加了一些特色,比 C shell 更先進。 Korn shell 的特色包括了可編輯的歷程、別名、函數、正規表達式萬用字元(regular expression wildcard)、內建算術、工作控制(job control)、共作處理(coprocessing)、和特殊的除法錯功能。 Bourne shell 幾乎和 Korn shell 完全向上相容(upward compatible),所以在 Bourne shell 下開發的程式仍能在 Korn shell 上執行。 Korn shell 提示符號的預設值也是 $。在 Linux 系統使用的 Korn shell 叫做 pdksh,它是指 Public Domain Korn Shell。
三種shell各有優劣:
Sh is the shell initially used in Unix and can be used on every Unix variant.。儘管sh在shell程式設計方面表現優異,但在處理與使用者的互動方面,其表現還不如csh和ksh。
Bash是Linux預設的shell,與sh完全相容。 bash放在bin/bash中,它有許多特色,可以提供如命令補全、命令編輯和命令歷史表等功能它還包含了很多csh和ksh中的優點,有靈活和強大的編程接口,同時又有友善的使用者介面。
因此,我們至少得知道sh和bash都是Linux上的預設shell,而bash是sh的升級版。
shell如何執行使用者的指令
shell有兩種執行指令的方式,第一種方法是使用者事先編寫一個sh腳本文件,內含shell腳本,而後使用shell程式執行該腳本,這種方式,我們習慣稱為shell程式設計。
第二種形式,則是使用者直接在shell介面上執行shell指令,由於shell介面的關係,大家都習慣一行行的書寫,很少寫出成套的程式來一起執行,所以也稱命令行。
總結:shell可以說只是為使用者與機器之間搭建的一個橋樑,讓我們能夠透過shell來對電腦進行操作和交互,從而達到讓電腦為我們服務的目的。
以上是linux shell有哪些類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

CentOS 和 Ubuntu 的關鍵差異在於:起源(CentOS 源自 Red Hat,面向企業;Ubuntu 源自 Debian,面向個人)、包管理(CentOS 使用 yum,注重穩定;Ubuntu 使用 apt,更新頻率高)、支持週期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社區支持(CentOS 側重穩定,Ubuntu 提供廣泛教程和文檔)、用途(CentOS 偏向服務器,Ubuntu 適用於服務器和桌面),其他差異包括安裝精簡度(CentOS 精

CentOS 安裝步驟:下載 ISO 映像並刻錄可引導媒體;啟動並選擇安裝源;選擇語言和鍵盤佈局;配置網絡;分區硬盤;設置系統時鐘;創建 root 用戶;選擇軟件包;開始安裝;安裝完成後重啟並從硬盤啟動。

CentOS將於2024年停止維護,原因是其上游發行版RHEL 8已停止維護。該停更將影響CentOS 8系統,使其無法繼續接收更新。用戶應規劃遷移,建議選項包括CentOS Stream、AlmaLinux和Rocky Linux,以保持系統安全和穩定。

Docker利用Linux內核特性,提供高效、隔離的應用運行環境。其工作原理如下:1. 鏡像作為只讀模板,包含運行應用所需的一切;2. 聯合文件系統(UnionFS)層疊多個文件系統,只存儲差異部分,節省空間並加快速度;3. 守護進程管理鏡像和容器,客戶端用於交互;4. Namespaces和cgroups實現容器隔離和資源限制;5. 多種網絡模式支持容器互聯。理解這些核心概念,才能更好地利用Docker。

CentOS 已停止維護,替代選擇包括:1. Rocky Linux(兼容性最佳);2. AlmaLinux(與 CentOS 兼容);3. Ubuntu Server(需要配置);4. Red Hat Enterprise Linux(商業版,付費許可);5. Oracle Linux(與 CentOS 和 RHEL 兼容)。在遷移時,考慮因素有:兼容性、可用性、支持、成本和社區支持。

CentOS 停止維護後,用戶可以採取以下措施應對:選擇兼容髮行版:如 AlmaLinux、Rocky Linux、CentOS Stream。遷移到商業發行版:如 Red Hat Enterprise Linux、Oracle Linux。升級到 CentOS 9 Stream:滾動發行版,提供最新技術。選擇其他 Linux 發行版:如 Ubuntu、Debian。評估容器、虛擬機或云平台等其他選項。

如何使用 Docker Desktop? Docker Desktop 是一款工具,用於在本地機器上運行 Docker 容器。其使用步驟包括:1. 安裝 Docker Desktop;2. 啟動 Docker Desktop;3. 創建 Docker 鏡像(使用 Dockerfile);4. 構建 Docker 鏡像(使用 docker build);5. 運行 Docker 容器(使用 docker run)。

VS Code擴展安裝失敗的原因可能包括:網絡不穩定、權限不足、系統兼容性問題、VS Code版本過舊、殺毒軟件或防火牆干擾。通過檢查網絡連接、權限、日誌文件、更新VS Code、禁用安全軟件以及重啟VS Code或計算機,可以逐步排查和解決問題。
