亚洲天堂av网_久久精品欧美一区二区三区不卡_亚洲欧美一级_欧美成人合集magnet

知名百科  > 所屬分類  >  其他科技   

shell計算機殼層

Shell是操作系統的外殼,負責接收用戶輸入的命令并傳遞給操作系統內核執行。它是交互式的和跨平臺的,并具有腳本、管道和重定向、命令解析等功能。它允許用戶與計算機系統交互并執行各種操作,如啟動程序、管理文件和目錄等。

在shell語言的發展歷史上,最早的Thompson Shell是由Ken Ken Thompson創立的,后來的Bourne Shell和C Shell引入了現代Shell的更多特性和功能,成為Unix系統的標準Shell。常見的shell包括Bash、Zsh和Fish,它們廣泛應用于不同的操作系統。

目前,計算機用戶界面主要分為兩種類型:命令行界面(CLI)和圖形用戶界面(GUI)。CLI是通過命令行輸入文本命令與計算機進行交互的界面,通常用于服務器管理、系統維護、腳本編寫和批處理操作。GUI通過圖形元素和鼠標操作進行交互,并通過插件或擴展進行定制以滿足用戶的特定需求。隨著其不斷演進,shell語言在計算領域的影響力逐漸擴大,為用戶提供了與操作系統高效交互的能力。

目錄

發展歷史 編輯本段

shell語言的起源

1971年,Ken Thompson為UNIX創建了第一個shell-V6 shell。這個shell位于/bin/sh中,是一個獨立的用戶程序,它的執行不依賴于內核。與Multics的前身類似,它實現了通配符等概念(例如:*。txt),但這些功能并沒有內置到shell中,而是在一個名為“glob”的獨立實用程序中實現。同樣,用于計算條件表達式的命令也是分開的。這種分離策略保持了shell的緊湊性,其源代碼少于900行。

shell語言的演變

1977年,斯蒂芬·伯恩出版了《伯恩的殼》,以解決湯普森殼的劇本限制。該版本增加了額外的功能,例如調度腳本和循環的能力。Bourne shell不僅是一個重要的進步,而且現在主流Linux系統使用的許多shell都將其作為錨點。

1978年,C shell發布并迅速成為Unix系統上流行的命令解釋器。它是由Bill Joy開發的Unix shell的變體。C shell的主要設計目標是它看起來更像C編程語言,并且更適合交互式使用。

1983年7月14日,大衛·科恩(大衛·科恩)在USENIX的年度技術會議上發布了科恩殼牌。它的開發目標是繼承C shell和Tab C-shell的所有功能,包括腳本和循環處理,這些功能與Bourne shell相同。Ksh93是Korn shell的一個流行的開源版本,于1993年獲得了開源的地位。在其與Bourne shell的良好兼容性中,還引入了其他shell語言的特性,例如csh的歷史功能。

1989年,Bash是Brian Fox為GNU項目編寫的Unix shell和命令語言,旨在成為Bourne shell的免費軟件替代品。Bash的語法和功能受Bourne shell的影響,但增加了許多新功能和改進。作為Bourne shell的繼承者,Bash繼承了前代shell的許多功能,并引入了更多功能。即使在今天,Bash仍然是Unix和Linux社區中最常用的shell之一。

1989年5月30日,Almquist shell上市(通常簡稱為“ash”)。它是由Kenneth Almquist(Kenneth Almkvist)開發的輕量級Unix shell。它被設計為傳統Bourne shell(sh)的更緊湊、更高效的替代品。Ash shell通常用于嵌入式系統和其他資源有限且效率至關重要的環境。在FreeBSD、NetBSD、DragonFly BSD和Minix上,默認安裝的shell(/bin/sh)派生自ash。在Linux上,開發了Debian Almquist shell。

1990年,Z shell(zsh)是一個功能豐富的Unix shell,由Paul Falstad(Paul Follestad)開發。它在Bourne shell、Bash和Korn shell的基礎上增加了許多新功能和改進,旨在提供一個更強大、更靈活的命令解釋器環境。從macOS Catalina開始,Mac將使用zsh作為整個操作系統的默認登錄shell和交互shell。

2005年,發布了新的命令行界面工具fish shell(也稱為友好交互式shell)。它由Axel Liljencrantz等開發人員共同創建。其特點是具有自動補全、顏色突出顯示和動態建議等便捷功能,并具有出色的可讀性和豐富的插件生態。此外,fish shell還有一個活躍的開發者社區,不斷推出新功能和優化改進。隨著UNIX的流行,對更強大和通用的腳本語言的需求也在增加。Scheme shell(scsh)通過使用Scheme(LISP語言的衍生物)提供了一個腳本環境。Pyshell試圖使用Python實現類似的功能。在嵌入式系統上,BusyBox將shell和所有命令集成到一個二進制可執行文件中,從而簡化了分發和管理。許多早期的shell想法和接口已經保存了近35年,這是作者們不懈努力的證明。雖然外殼不斷刷新自己,但本質上并沒有太大變化。盡管有創造特殊外殼的新嘗試,但Bourne shell及其衍生產品仍是使用最廣泛的。

形式分類 編輯本段

Shell是用戶與操作系統內核進行交互的界面,可以用命令行或圖形界面兩種形式表示。

圖形用戶界面外殼:GUI shell允許用戶通過圖形操作界面輕松選擇、拖動和執行其他直觀操作來執行任務和配置系統設置,這對新手用戶來說更加友好和容易。相反,命令行shell需要用戶輸入特定的命令來執行操作,這需要用戶具有一定的專業知識和技能。GUI shell通常作為桌面環境的一部分來實現,如GNOME、KDE等離子體、XFCE等。這些桌面環境提供了一系列組件,如窗口管理器、面板、系統托盤等。,它們構成了用戶可以看到的圖形界面。GUI shell中的資源管理器和設置界面等特定工具也是這些桌面環境的一部分。它們通常用各種編程語言和圖形庫(如GTK+、Qt等)編寫。),它為創建圖形界面提供了必要的功能和工具。

命令行外殼:CLI shell通常指用戶通過命令行界面輸入文本命令與操作系統進行交互的方式。用戶可以直接鍵入命令來執行操作。常見命令行shell包括Bash、Zsh、Powershell等。在Linux或MacOS中,它通常被稱為“終端”,而在Windows操作系統中,它被稱為“命令提示符”或“Windows Powershell”。CLI shell為用戶提供了一個接口,用戶可以通過輸入人類可讀的命令與操作系統進行交互,例如“cat、ls、echo”。這些命令將被傳遞給shell執行,執行結果將顯示在命令行界面上。CLI shell提供了管理文件、運行程序和執行系統操作的有效方法。

基本語法 編輯本段

外殼變量:Shell變量是shell程序中用來存儲文本字符串或數字的變量。Shell變量通常用于存儲臨時值或用戶輸入,并且可以在shell程序執行期間進行修改和訪問。在shell中,變量名都是字符串,可以包含字母、數字和下劃線,并且必須以字母或下劃線開頭。常用的外殼變量包括環境變量、參數變量、位置變量和特殊變量。

殼程參數:當shell腳本執行時,您可以傳入命令行參數,以便腳本可以根據這些參數執行特定的操作。這些傳入的參數被腳本中的位置參數變量引用。位置參數變量$1、$2和$3分別對應于第一個、第二個和第三個傳入參數,依此類推。此外,$ @用于獲取所有傳入參數,而$ #用于獲取傳入參數的數量。

外殼陣列:在shell腳本中,用戶可以使用數組來存儲一系列數值或字符串。在大多數Unix shell中,您可以使用Bash來操作數組。

殼牌過程控制:在Shell腳本中,流控制用于根據條件執行不同的代碼塊或控制循環的執行。

外殼文件包含:外殼文件包含意味著外殼腳本中的代碼可以通過引用其他文件來執行。這對于從邏輯上將代碼分解成多個文件以更好地管理和組織代碼非常有用。在shell中,有幾種方法可以包含其他文件,最常用的方法是使用source命令或。符號。

主要特性 編輯本段

交互性:交互式外殼:用戶可以直接與外殼實時交互。用戶可以輸入命令,shell將立即執行這些命令并返回結果。該模式通常用于用戶在命令行界面下直接與系統交互、輸入命令、查看輸出和管理文件。非交互式shell:由shell執行的命令:shell來自腳本文件或由重定向標準輸入提供。在這種模式下,shell不會等待用戶輸入,而是直接執行腳本中的命令并將結果輸出到指定的位置。該模式通常用于自動任務、批處理等場景。

shell計算機殼層shell計算機殼層

腳本:Shell腳本是包含shell命令的文本文件,具有靈活性和可移植性。可以通過設置文件第一行的“shebang”來設置(如#!/bin/bash)來指定腳本的解釋器,以便腳本可以找到正確的解釋器在不同的系統上執行。同時,腳本可以接受和處理位置參數,并且可以通過設置執行權限直接運行,這使得shell腳本在自動化任務和系統管理中非常有用。

重定向:Shell重定向和管道允許用戶靈活控制命令的輸入和輸出,實現數據的重定向和傳輸。通過重定向,用戶可以將命令的輸出保存到文件中,或者將文件中的內容作為命令的輸入,甚至可以同時重定向標準輸出和標準錯誤。但是,管道可以直接將一個命令的輸出轉移到另一個命令作為輸入,從而實現命令之間的數據流通信和處理,從而提高數據處理的效率和靈活性。

命令解析:命令擴展:shell將從左到右解析、擴展和重定向命令。變量賦值和重定向將首先保存,未賦值或重定向的單詞將被擴展,其中第一個擴展的單詞被視為命令名,其余的作為參數。如果命令只包含賦值和重定向,則賦值會影響當前shell環境;如果命令名存在,則執行該命令。如果試圖對只讀變量賦值,或者重定向中有錯誤,命令將以非零狀態退出。命令搜索和執行:shell將按照一定的順序查找和執行命令。如果命令名不包含斜杠,shell將首先檢查是否有同名的shell函數或內置命令,如果沒有,它將在$PATH環境變量指定的目錄中搜索可執行文件。如果命令名包含斜杠或搜索成功,shell將在單獨的執行環境中執行該命令。如果執行失敗并且文件不在可執行格式或目錄中,則將其視為shell腳本并執行。最后,shell將等待命令完成并收集其退出狀態。命令執行環境:每個簡單的命令或shell函數都在一個單獨的執行環境中運行,該環境繼承自shell,但又與之隔離。該環境包括打開的文件、當前工作目錄、文件創建模式掩碼、導出的shell變量和函數等。子shell或子shell是shell進程的副本,其中運行的命令不會影響主shell環境。此外,在此隔離環境中,某些shell選項和陷阱設置可能會被重置或忽略。這些特點保證了命令執行的獨立性和穩定性。

跨平臺:以主流的bash腳本為例,官方提供了posix模式:通過使用- posix或set -o posix命令行選項,Bash可以進入posix模式,使其更符合POSIX標準,并調整一些默認行為以匹配POSIX指定的值。在POSIX模式下,Bash將執行一些特定的更改,包括設置變量POSIXLY_CORRECT,并再次搜索命令哈希表。Bash-4.0引入了shell兼容級別的概念,允許用戶通過設置一組shopt選項來選擇Bash的行為,從而在不同版本之間遷移腳本。在使用shell編寫和執行腳本時,了解并熟悉這些不同模式和兼容級別的設置以確保腳本的正確性和跨平臺性是非常重要的。根據特定要求選擇適當的模式和兼容級別,以確保腳本可以正常運行并在不同的環境中表現出相同的行為。

安全性能 編輯本段

數據加密和解密:OpenSSL是一個開源的密碼學工具包,它提供了一系列加密和解密算法以及SSL/TLS協議的實現。它用于保護網絡通信的安全,包括加密、解密、證書頒發、數字簽名等功能。通過使用這些方法,用戶可以保護敏感數據的安全,并確保只有授權用戶才能訪問這些數據。日志記錄:在Unix系統上,rSyslogd和syslog-ng等軟件通常用作syslog服務器。通過Syslog,可以集中記錄和管理整個系統的日志信息,并幫助管理員監控系統的運行狀態,解決問題并滿足合規性要求。安全審計:通過安全審計shell腳本,可以詳細記錄用戶在shell中的操作行為,包括執行的命令、時間戳、執行環境等信息,有助于跟蹤用戶的活動并在必要時進行調查和審計。同時,它還可以幫助識別潛在的入侵和未經授權的系統訪問,并及時發現和處理安全威脅。

主要應用 編輯本段

服務器管理:作為系統管理員管理和配置服務器的重要工具,shell語言因其易用性和與Unix、Linux等系統的兼容性而備受青睞。通過編寫shell腳本,管理員可以自動執行各種任務,簡化日常操作并提高效率和準確性。無論是簡單的文件操作還是復雜的系統管理,shell語言都為業務環境中的服務器管理提供了強有力的支持。

操作系統操作和維護:Shell腳本廣泛應用于操作系統的運行和維護。中文操作系統通常是基于Linux內核的發行版,如麒麟、neokylin和紅旗Linux。使用shell腳本編寫一個監控腳本可以實時監控系統的運行狀態,包括CPU利用率、內存占用、磁盤空間等。一旦發現異常情況,可以發送電子郵件或短信進行報警。國產操作系統通常使用RPM或DEB包管理工具,安裝、卸載和更新軟件包的腳本可以通過shell腳本編寫,這簡化了軟件管理的過程。

任務自動化:shell語言的強大功能使用戶可以輕松地自動化任務,包括文件和進程管理以及執行復雜的命令。其靈活的腳本和腳本能力使其廣泛用于系統編程和管理。通過編寫Shell腳本,用戶可以簡化重復性工作,提高效率,并確保任務的一致性和準確性。這使得shell語言成為系統管理員和開發人員不可或缺的工具,這大大簡化了日常工作中的許多繁瑣任務。 

附件列表


0

詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫學等領域),建議您咨詢相關領域專業人士。

如果您認為本詞條還有待完善,請 編輯

上一篇 順序結構    下一篇 內存管理分頁技術

同義詞

暫無同義詞
亚洲天堂av网_久久精品欧美一区二区三区不卡_亚洲欧美一级_欧美成人合集magnet
国产精品黄色在线观看| 国产亚洲a∨片在线观看| 亚洲国产日韩欧美综合久久| 国产精品久久久久久影视| 欧美激情在线观看| 免费欧美日韩| 免费欧美视频| 免费观看亚洲视频大全| 久久精品亚洲精品| 久久国产99| 久久福利电影| 久久精品一区二区三区中文字幕| 性欧美18~19sex高清播放| 亚洲欧美日韩系列| 欧美在线亚洲综合一区| 久久aⅴ国产紧身牛仔裤| 久久精品在线| 蜜桃精品一区二区三区| 欧美风情在线观看| 欧美日韩国产色综合一二三四| 欧美精品粉嫩高潮一区二区| 欧美激情综合色| 国产精品成人播放| 国产无一区二区| 亚洲高清在线观看一区| 亚洲激情在线观看视频免费| 亚洲美女啪啪| 午夜久久一区| 毛片精品免费在线观看| 欧美精品在线免费| 国产精品久久久久免费a∨| 国产欧美一区二区色老头| 国产一二三精品| 亚洲国产视频直播| 中日韩视频在线观看| 欧美专区在线播放| 欧美精品性视频| 国产视频久久网| 亚洲精品国产精品国自产在线| 一本色道久久加勒比88综合| 亚洲欧美成人在线| 欧美a级大片| 国产欧美69| 亚洲人成在线免费观看| 亚洲欧美成人在线| 欧美成人视屏| 国产乱码精品一区二区三区五月婷| 国产亚洲精品资源在线26u| 一区在线电影| 亚洲夜间福利| 免费不卡在线视频| 国产精品视频福利| 亚洲美女网站| 久久久久久伊人| 国产精品美女主播在线观看纯欲| 国产一区二区三区最好精华液| 亚洲麻豆视频| 久久综合亚洲社区| 国产欧美日韩精品丝袜高跟鞋| 亚洲精品国精品久久99热一| 欧美在线观看一区二区| 欧美色视频一区| 亚洲黄色影片| 久久人人爽爽爽人久久久| 国产精品第一区| 亚洲蜜桃精久久久久久久| 久久精品国产亚洲精品| 国产精品国码视频| 99re6这里只有精品| 免费久久99精品国产| 国产午夜久久| 午夜精品av| 国产精品第十页| 99热在这里有精品免费| 免费在线欧美黄色| 激情欧美日韩一区| 久久精品国产精品| 国产毛片一区| 亚洲欧美激情视频| 国产精品久久久久久久久婷婷 | 国产精品毛片在线看| 日韩视频在线一区二区三区| 美乳少妇欧美精品| 经典三级久久| 久久中文字幕一区| 在线电影欧美日韩一区二区私密| 欧美中文在线免费| 国产九九精品| 久久成人国产| 极品av少妇一区二区| 久久精品一区蜜桃臀影院| 国产日韩欧美一区| 久久久精品日韩欧美| 国外视频精品毛片| 久热精品在线视频| 在线观看一区视频| 欧美成人精品在线播放| 亚洲精品自在在线观看| 欧美精品国产一区二区| 99re6热只有精品免费观看| 欧美人体xx| 亚洲影视中文字幕| 国产欧美日本一区视频| 久久精品国产99国产精品澳门| 国产一区二区丝袜高跟鞋图片| 久久久久九九九九| 最近中文字幕mv在线一区二区三区四区| 另类专区欧美制服同性| 最新国产拍偷乱拍精品| 欧美日韩午夜激情| 午夜视频精品| 亚洲夫妻自拍| 国产精品v一区二区三区 | 国产精品入口麻豆原神| 欧美一级精品大片| 亚洲成色精品| 欧美日韩在线一区二区| 亚洲嫩草精品久久| 一区二区在线免费观看| 欧美精品日韩www.p站| 亚洲一区综合| 激情伊人五月天久久综合| 欧美激情视频一区二区三区不卡| 亚洲天堂av综合网| 黄色小说综合网站| 欧美日韩一区二区三区视频| 欧美一区二区三区在线| 91久久精品国产91久久| 国产精品视频大全| 欧美成人在线免费观看| 亚洲欧美日韩专区| 91久久精品一区| 国产精品一区二区久激情瑜伽| 噜噜噜在线观看免费视频日韩| 中文av字幕一区| 在线日本高清免费不卡| 国产精品二区在线| 老牛国产精品一区的观看方式| 亚洲一区图片| 亚洲三级电影全部在线观看高清| 国产精品自在在线| 欧美日韩午夜剧场| 欧美h视频在线| 久久国产精品电影| 亚洲欧美制服另类日韩| 亚洲日本va午夜在线影院| 黑人一区二区| 欧美日韩在线播放一区| 免费观看欧美在线视频的网站| 欧美一级久久久| 亚洲一区二区三区涩| 亚洲无限乱码一二三四麻| 极品少妇一区二区| 国产精品欧美一区喷水| 欧美日韩亚洲高清一区二区| 久久久一本精品99久久精品66| 亚洲欧美制服中文字幕| 亚洲天堂av综合网| 一本色道久久加勒比精品| 亚洲精选中文字幕| 亚洲第一毛片| 亚洲成人在线网| 一区在线视频观看| 黄色一区二区三区四区| 国户精品久久久久久久久久久不卡 | 亚洲美女在线观看| 激情成人av| 国内揄拍国内精品久久| 国产乱码精品1区2区3区| 国产精品成人v| 国产精品乱码妇女bbbb| 欧美日韩视频免费播放| 欧美精品一区二区在线播放| 免费成人av在线| 欧美激情一区二区三区高清视频| 久久综合一区二区| 欧美 日韩 国产在线| 欧美91视频| 你懂的国产精品永久在线| 久久精品国产亚洲5555| 欧美在线不卡视频| 久久久久久久久久久久久久一区| 久久久久天天天天| 久久久久久国产精品一区| 久久久久久亚洲精品杨幂换脸 | 在线观看欧美黄色| 在线欧美不卡| 亚洲国产美女| 99re66热这里只有精品4| 亚洲午夜电影| 欧美一区二区在线观看| 久久久福利视频| 免费在线欧美黄色| 欧美精品久久99久久在免费线| 欧美精品一卡二卡| 国产精品你懂的在线欣赏| 国产原创一区二区| 亚洲人成人一区二区在线观看| 在线综合欧美| 欧美在线免费一级片|