更新時間:2022-07-27 11:16:16 來源:動力節點 瀏覽828次
Shell為您提供到 Unix 系統的接口。它從您那里收集輸入并根據該輸入執行程序。當一個程序完成執行時,它會顯示該程序的輸出。
Shell 是一個環境,我們可以在其中運行我們的命令、程序和 shell 腳本。shell 有不同的風格,就像操作系統有不同的風格一樣。每種 shell 風格都有自己的一組公認的命令和功能。
提示符$稱為命令提示符,由 shell 發出。顯示提示時,您可以鍵入命令。
在您按下Enter后,Shell 會讀取您的輸入。它通過查看輸入的第一個單詞來確定要執行的命令。一個詞是一組完整的字符??崭窈椭票矸指魡卧~。
以下是date命令的一個簡單示例,它顯示當前日期和時間
$date
Thu Jun 25 08:30:19 MST 2009
您可以使用環境教程中解釋的環境變量 PS1 自定義命令提示符。
在 Unix 中,有兩種主要類型的 shell -
Bourne shell - 如果您使用的是 Bourne 類型的 shell,則$字符是默認提示符。
C shell - 如果您使用的是 C 類型的 shell,則 % 字符是默認提示符。
Bourne Shell 有以下子類別 :
伯恩殼 (sh)
Korn 殼 (ksh)
Bourne Again shell (bash)
POSIX 外殼 (sh)
不同的 C 型外殼如下 :
C 外殼 (csh)
TENEX/TOPS C 外殼 (tcsh)
最初的 Unix shell 是由 Stephen R. Bourne 在 1970 年代中期在新澤西州的 AT&T 貝爾實驗室編寫的。
Bourne shell 是第一個出現在 Unix 系統上的 shell,因此被稱為“shell”。
在大多數版本的 Unix 上,Bourne shell 通常安裝為/bin/sh 。出于這個原因,它是編寫可在不同版本的 Unix 上使用的腳本的首選 shell。
shell 腳本的基本概念是一個命令列表,這些命令按執行順序列出。一個好的 shell 腳本會有注釋,前面有#符號,描述這些步驟。
有條件測試,比如值A大于值B,循環允許我們遍歷海量數據,文件讀取和存儲數據,變量讀取和存儲數據,腳本可能包含函數。
我們將在接下來的部分中編寫許多腳本。這將是一個簡單的文本文件,我們將在其中放置所有命令和幾個其他必需的構造,這些構造告訴 shell 環境要做什么以及何時執行。
Shell 腳本和函數都被解釋。這意味著它們沒有被編譯。
假設我們創建了一個test.sh腳本。請注意,所有腳本都將具有.sh擴展名。在向腳本添加任何其他內容之前,您需要提醒系統正在啟動一個 shell 腳本。這是使用shebang構造完成的。例如
#!/bin/sh
這告訴系統后面的命令將由 Bourne shell 執行。之所以稱為 shebang,是因為#符號稱為哈希,而 ! 符號稱為 bang。
要創建包含這些命令的腳本,請先放置 shebang 行,然后添加命令
#!/bin/bash
pwd
ls
Shell 腳本有幾個必需的結構,它們告訴 shell 環境做什么和什么時候做。當然,大多數腳本都比上述腳本更復雜。
畢竟,shell 是一種真正的編程語言,包含變量、控制結構等。無論腳本變得多么復雜,它仍然只是順序執行的命令列表。
以下腳本使用讀取命令從鍵盤獲取輸入并將其分配為變量 PERSON 的值,最后將其打印在 STDOUT 上。
#!/bin/sh
# Author : Zara Ali
# Copyright (c) Tutorialspoint.com
# Script follows here:
echo "What is your name?"
read PERSON
echo "Hello, $PERSON"
這是腳本的示例運行
$./test.sh
What is your name?
Zara Ali
Hello, Zara Ali
$
以上就是關于“shell編程基礎教程”的介紹,大家如果想了解更多相關知識,不妨來關注一下動力節點的Java在線學習,里面的課程內容由淺到深,適合小白學習,希望對大家能夠有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習