您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關SHELL編程小程序的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
shell腳本示例:(求1到100的和)
#vi qiuhe.sh
#!/bin/sh # 符號#!用來告訴系統他后面的參數是用來執行該文檔的程式
a=1 #定義變量
sum=0
while [ $a -le 100 ] #while循環,其中-le的意思是小于或等于
do
((sum=sum+a))
((a=a+1))
done
echo $sum
編寫完wq保存退出。
#chmod +x qiuhe.sh (添加可執行權限)
幾種關系運算符附圖參考:
具體執行腳本時,可以使用如下兩種方法,附圖參考
這個求和也可以通過一句話來實現
#echo |awk '{for (i=1;i<=100;i=i+1) a=a+i} { print a}'
二、SHELL中常見命令和流程控制
1、在shell腳本中使用的常見命令
常用命令語法及功能
echo "some text": 將文字內容打印在屏幕上
ls: 文檔列表
wc –l filewc -w filewc -c file: 計算文檔行數計算文檔中的單詞數計算文檔中的字符數
cp sourcefile destfile: 文檔拷貝
mv oldname newname : 重命名文檔或移動文檔
rm file: 刪除文檔
grep 'pattern' file: 在文檔內搜索字符串 比如:grep 'aaa' file.txt
Sed是個基本的查找替換程式。 awk 用來從文本文檔中提取字段。具體使用可參見相關資料,在此不展開了。
2、SHELL的流程控制
和其他高級程序設計語言一樣,Shell提供了用來控制程序執行流程的命令,包括條件分支和循環結構,用戶可以用這些命令創建非常復雜的程序。
if條件語句:Shell程序中的條件分支是通過if條件語句來實現的,其一般格式為:
if 條件命令串
then
條件為真時的命令串
else
條件為假時的命令串
fi
for循環:for循環對一個變量的可能的值都執行一個命令序列。賦給變量的幾個數值既可以在程序內以數值列表的形式提供,也可以在程序以外以位置參數的形式提供。for循環的一般格式為:
for變量名 [in數值列表]
do
若干個命令行
done
變量名可以是用戶選擇的任何字串,如果變量名是var,則在in之后給出的數值將順序替換循環命令列表中的$var。如果省略了in,則變量var的取值將是位置參數。對變量的每一個可能的賦值都將執行do和done之間的命令列表。
while和until循環:while和until命令都是用命令的返回狀態值來控制循環的。While循環的一般格式為:
while
若干個命令行1
do
若干個命令行2
done
只要while的“若干個命令行1”中最后一個命令的返回狀態為真,while循環就繼續執行do...done之間的“若干個命令行2”。
until命令是另一種循環結構,它和while命令相似,其格式如下:
until
若干個命令行1
do
若干個命令行2
done
until循環和while循環的區別在于:while循環在條件為真時繼續執行循環,而until則是在條件為假時繼續執行循環。
三、SHELL程序的調試
在編程過程中難免會出錯,有的時候,調試程序比編寫程序花費的時間還要多,shell程序同樣如此。
shell程序的調試主要是利用bash命令解釋程序的選擇項。調用bash的形式是:
bash(sh) -選擇項 shell程序文件名
幾個常用的選擇項是:
-e:如果一個命令失敗就立即退出
-n:讀入命令檢查語法是否有錯誤但是不執行它們
-u:置換時把未設置的變量看作出錯
-v:讀入shell輸入行并把它們顯示出來
-x:執行命令時把命令和它們的參數顯示出來
上面的所有選項也可以在shell程序內部用“set -選擇項”的形式引用,而“set +選擇項”則將禁止該選擇項起作用。如果只想對程序的某一部分使用某些選擇項時,則可以將該部分用上面兩個語句包圍起來。
1.未置變量退出和立即退出
未置變量退出特性允許用戶對所有變量進行檢查,如果引用了一個未賦值的變量就終止shell程序的執行。shell通常允許未置變量的使用,在這種情況下,變量的值為空。如果設置了未置變量退出選擇項,則一旦使用了未置變量就顯示錯誤信息,并終止程序的運行。未置變量退出選擇項為“-u”。
當shell運行時,若遇到不存在或不可執行的命令、重定向失敗或命令非正常結束等情況時,如果未經重新定向,該出錯信息會打印在終端屏幕上,而shell程序仍將繼續執行。要想在錯誤發生時迫使shell程序立即結束,可以使用“-e”選項將shell程序的執行立即終止。
2.shell程序的跟蹤
調試shell程序的主要方法是利用shell命令解釋程序的“-v”或“-x”選項來跟蹤程序的執行。“-v”選擇項使shell在執行程序的過程中,把它讀入的每一個命令行都顯示出來,而“-x”選擇項使shell在執行程序的過程中把它執行的每一個命令在行首用一個“+”加上命令名顯示出來。并把每一個變量和該變量所取的值也顯示出來。
除了使用shell的“-v”和“-x”選擇項以外,還可以在shell程序內部采取一些輔助調試的措施。例如,可以在shell程序的一些關鍵地方使用echo命令把必要的信息顯示出來,它的作用相當于C語言中的printf語句,這樣就可以知道程序運行到什么地方及程序目前的狀態。
調試附圖參考:
感謝各位的閱讀!關于“SHELL編程小程序的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。