shell為您提供了對(duì)UNIX系統(tǒng)的接口。向你收集的輸入,并根據(jù)輸入執(zhí)行程序。當(dāng)一個(gè)程序執(zhí)行完畢后,它會(huì)顯示該程序的輸出。
翁源ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書(shū)合作)期待與您的合作!shell是一個(gè)環(huán)境,我們可以運(yùn)行我們的命令,程序和shell腳本。shell有不同的風(fēng)格,就像有不同風(fēng)格的操作系統(tǒng)。每個(gè)的shell的風(fēng)格,有它自己的一套識(shí)別的命令和功能。
提示符下這就是所謂的命令提示符下$,發(fā)出shell。雖然會(huì)顯示提示,您可以鍵入一個(gè)命令。
shell讀取輸入后按Enter鍵。它決定了想要的命令和執(zhí)行輸入的第一個(gè)字符。一個(gè)字是一個(gè)完整的字符集??崭窈椭票矸指魡卧~。
以下是一個(gè)簡(jiǎn)單的例子date命令顯示當(dāng)前日期和時(shí)間:
$dateThu Jun 25 08:30:19 MST 2009你可以定制你的命令提示符下使用環(huán)境變量PS1環(huán)境教程解釋。
在UNIX系統(tǒng)下有兩種主要類(lèi)型的shell:
Bourne shell. 如果您使用的是Bourne類(lèi)型的shell,默認(rèn)提示符為$字符。
C shell.如果您使用的是C型的shell,默認(rèn)的提示字符%。
再還有各種Bourne shell的子類(lèi)別列示如下:
Bourne shell ( sh)
Korn shell ( ksh)
Bourne Again shell ( bash)
POSIX shell ( sh)
不同的C型shell如下:
C shell ( csh)
TENEX/TOPS C shell ( tcsh)
原來(lái)的UNIX shell寫(xiě)于20世紀(jì)70年代中期,由斯蒂芬·伯恩,在新澤西AT&T貝爾實(shí)驗(yàn)室。
Bourne shell 是第一個(gè)shell 出現(xiàn)在UNIX系統(tǒng)上,因此,它被稱(chēng)為 "the shell".
Bourne shell的安裝通常為 /bin/sh 在大多數(shù)UNIX版本。出于這個(gè)原因,它是編寫(xiě)腳本使用在幾個(gè)不同的版本的UNIX shell。
在本教程中,我們將要覆蓋大多數(shù)基于傳播Borne Shell概念。
shell腳本的基本概念是一個(gè)命令列表中列出的順序執(zhí)行。 #是shell腳本注釋前面一英鎊符號(hào)。
條件測(cè)試,如值A(chǔ)大于B值,循環(huán)我們?nèi)ネㄟ^(guò)大量的數(shù)據(jù),讀取和存儲(chǔ)數(shù)據(jù)的文件和變量的讀取和存儲(chǔ)數(shù)據(jù),該腳本可能包含的功能。
shell腳本和函數(shù)都解釋。這意味著他們不會(huì)被編譯。
我們將在接下來(lái)的幾個(gè)教程寫(xiě)了許多腳本。這將是一個(gè)簡(jiǎn)單的文本文件,在其中,我們會(huì)把我們所有的命令和其他一些必要的結(jié)構(gòu),告訴shell環(huán)境做什么,什么時(shí)候做。
假設(shè)我們創(chuàng)建了一個(gè)test.sh腳本。注意:所有的腳本 .sh擴(kuò)展。添加任何東西到腳本,需要提醒系統(tǒng)正在啟動(dòng)一個(gè)shell腳本。例如:
#!/bin/sh這是告訴系統(tǒng)Bourne shell的執(zhí)行下面的命令。這就是所謂的家shebang ,因?yàn)椤埃!狈?hào)被稱(chēng)為哈希,和!符號(hào)被稱(chēng)為bang。
要?jiǎng)?chuàng)建一個(gè)包含這些命令的腳本,把shebang行第一,然后添加命令:
#!/bin/bashpwd ls你可以把注釋?zhuān)谀愕哪_本如下:
#!/bin/bash# Author : Zara Ali# Copyright (c) Tutorialspoint.com# Script follows here:pwd ls現(xiàn)在保存上面的內(nèi)容,使此腳本可執(zhí)行如下:
$chmod +x test.sh現(xiàn)在,你的shell腳本,可隨時(shí)執(zhí)行如下:
$./test.shThis would produce following result:
/home/amrood index.htm unix-basic_utilities.htm unix-directories.htm test.sh unix-communication.htm unix-environment.htm注:要執(zhí)行任何程序在當(dāng)前目錄中,執(zhí)行可使用 ./program_name
Shell腳本有幾個(gè)必要的結(jié)構(gòu)告訴shell環(huán)境做什么,什么時(shí)候做。當(dāng)然,大多數(shù)腳本是比上述更加復(fù)雜。
shell畢竟,真正的編程語(yǔ)言,完成變量,控制結(jié)構(gòu),等等。無(wú)論腳本變得多么復(fù)雜,但是,它仍然是順序執(zhí)行的命令的列表。
下面的腳本使用讀命令從鍵盤(pán)輸入,并將其分配給變量PERSON的值,并最終打印在stdout。
#!/bin/sh# Author : Zara Ali# Copyright (c) Tutorialspoint.com# Script follows here:echo "What is your name?"read PERSON echo "Hello, $PERSON"下面是運(yùn)行的腳本示例:
$./test.shWhat is your name?Zara AliHello, Zara Ali$shell變量
變量是一個(gè)字符串,我們分配一個(gè)值。分配的值可以是一個(gè)數(shù)字,文本,文件名,設(shè)備,或任何其他類(lèi)型的數(shù)據(jù)。
變量是沒(méi)有超過(guò)實(shí)際數(shù)據(jù)的指針。 shell,可以創(chuàng)建,分配和刪除變量。
變量的名稱(chēng)可以包含只有字母(a到z或A到Z),數(shù)字(0~9)或下劃線(_)。
按照慣例,UNIX的shell變量將有自己的名稱(chēng)以大寫(xiě)字母。
下面的例子是有效的變量名:
_ALI TOKEN_A VAR_1 VAR_2以下是無(wú)效的變量名的例子:
2_VAR-VARIABLE VAR1-VAR2 VAR_A!不能使用其他字符,如!,*或 - 這些字符有特殊含義。
變量定義如下:
variable_name=variable_value例如:
NAME="Zara Ali"上面的例子中定義的變量名和分配值“Zara Ali”。這種類(lèi)型的變量被稱(chēng)為標(biāo)量變量。一個(gè)標(biāo)量變量只能容納一個(gè)值一次。
shell可以存儲(chǔ)任何你想在一個(gè)變量的值。例如:
VAR1="Zara Ali"VAR2=100為了訪問(wèn)存儲(chǔ)在一個(gè)變量的值,它的名字的前綴為美元符號(hào)($):
例如,下面的腳本將訪問(wèn)的價(jià)值定義的變量名,將它打印在標(biāo)準(zhǔn)輸出:
#!/bin/shNAME="Zara Ali"echo $NAME這將產(chǎn)生以下值:
Zara Alishell提供了一種標(biāo)記為只讀變量使用的只讀命令。后一個(gè)變量被標(biāo)記為只讀的,它的值不能被改變。
例如,下面的腳本將給出錯(cuò)誤提示,同時(shí)試圖改變NAME的值:
#!/bin/shNAME="Zara Ali"readonly NAME NAME="Qadiri"這個(gè)結(jié)果將產(chǎn)生以下如下:
/bin/sh: NAME: This variable is read only.注銷(xiāo)或刪除的變量告訴shell刪除的變量的變量列表做了跟蹤。一旦您取消設(shè)置變量,你不可以訪問(wèn)存儲(chǔ)在變量值。
以下是使用unset命令定義一個(gè)變量的語(yǔ)法:
unset variable_name上面的命令將取消設(shè)置定義的變量值。下面是一個(gè)簡(jiǎn)單的例子:
#!/bin/shNAME="Zara Ali"unset NAME echo $NAME上面的例子會(huì)不會(huì)打印出任何東西。不能使用unset命令取消定義的變量沒(méi)有被標(biāo)記為只讀。
當(dāng)一個(gè)shell運(yùn)行,存在三種主要類(lèi)型的變量:
局部變量: 局部變量是一個(gè)變量所做的是在當(dāng)前實(shí)例中的shell。這不是程序由shell開(kāi)始。在命令提示符下設(shè)置。
環(huán)境變量: 環(huán)境變量是一個(gè)變量所做的是任何子進(jìn)程的shell。有些程序需要以正常的環(huán)境變量。通常一個(gè)shell腳本定義,只有那些環(huán)境變量所需要的程序沒(méi)有運(yùn)行。
Shell 變量: shell變量是一個(gè)特殊的變量,由shell設(shè)置,也是shell正常需要。一些合成變量環(huán)境變量,而其他局部變量。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
分享名稱(chēng):shell腳本-創(chuàng)新互聯(lián)
轉(zhuǎn)載注明:http://aaarwkj.com/article48/ccpchp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、商城網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容