版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Linux Shell編程基礎(chǔ),授課:楊建新,腳本編程,傳統(tǒng)的DOS批處理文件(*.bat) Windows腳本: vbscript(*.vbs) Javascript(*.js) Unix Shell腳本,指定腳本執(zhí)行所使用的shell,如果Script的第一個(gè)非空字符不是#,則它會(huì)使用BourneShell。 如果Script的第一個(gè)非空字符是#時(shí),但不以#!開頭時(shí),則它會(huì)使用CShell。 如果Script以“#!”開頭,則“#!”后面所寫的就是所使用的Shell,而且要將整個(gè)路徑名稱指出來 *建議使用第3種方法,執(zhí)行shell腳本程序的方法,shellname scriptname .
2、scriptname,在shell中使用變量,BourneShell的變數(shù)類型只有字串變量,所以要使用數(shù)值運(yùn)算則必須靠外部命令達(dá)到目的 變量主要包括用戶變量和系統(tǒng)變量兩類 為變量賦值: var=string 取用變量時(shí)則在變量名稱前加上一“$”號 如果需要處理數(shù)值運(yùn)算,可以使用expr命令,expr用法,expr一般用于整數(shù)值計(jì)算,常用于程序計(jì)數(shù)器,實(shí)例如下: expr 10 + 10 expr 10 * 10 expr 30 / 10,常用系統(tǒng)變量,$HOME使用者自己的目錄 $PATH執(zhí)行命令時(shí)所搜尋的目錄 $TZ時(shí)區(qū) $MAILCHECK每隔多少秒檢查是否有新的信件 $PS1在命令列時(shí)的
3、提示號 $PS2當(dāng)命令尚未打完時(shí),Shell要求再輸入時(shí)的提示號 $MANPATHman指令的搜尋路徑,實(shí)例1,#!/bin/sh name=yangecho $nameecho $PATHPATH=$PATH:$HOME/binecho $PATHi=0i=expr $i + 3echo $i,使用特殊變量,$0這個(gè)程序的執(zhí)行名字 $n這個(gè)程序的第n個(gè)參數(shù)值,n=1.9 $*這個(gè)程序的所有參數(shù) $#這個(gè)程序的參數(shù)個(gè)數(shù) $這個(gè)程序的PID $!執(zhí)行上一個(gè)背景指令的PID $?執(zhí)行上一個(gè)指令的返回值 使用shift命令可以將參數(shù)后移,實(shí)例2:testvar,#!/bin/sh echoFilen
4、ame:$0 echoArguments:$*echoNumberofargs.:$#echo2ndarg.:$2shiftechoNumberofargs.:$# echo2ndarg.:$2 sethello,world echoArguments:$* echo2ndarg.:$2 執(zhí)行sh testvar this is my shell script,獲取用戶輸入,使用read命令可以獲取用戶的輸入并賦予變量 readvar1var2.,實(shí)例3,#!/bin/shecho Please input your name:read nameecho Your name is:$name,
5、條件測試,測試文件狀態(tài) -d:目錄 -s:文件非空 -f:正規(guī)文件 -w:可寫 -L:符號鏈接 -u:文件有suid位 -r:可讀 -x:可執(zhí)行,條件測試,比較表達(dá)式 -eq=字符串: -ne!= -gt -n:非空串 -lt=,條件測試,邏輯操作 -a, ; *) command. ; esac,實(shí)例4,#!/bin/sh until echo List Directory.1 echo Change Directory.2 echo Edit File.3 echo Remove File.4 echo Exit Menu.5 echo Please input your choice:
6、read choice test $choice = 5 do case $choice in 1) ls;,2) echo Enter target directory read dir cd $dir ; 3) echo Enter file name read file vi $file ; 4) echo Enter file name read file rm $file ; q|Q|5) echo Goodbye exit ; *) echo illegal Option esac done,流程控制:循環(huán)結(jié)構(gòu),for循環(huán): for var in listdo commands.
7、done while循環(huán): while conditiondo commands. done,流程控制:循環(huán)結(jié)構(gòu),until循環(huán):until condition-is-truedo commands. done 循環(huán)控制:break, continue break:跳出循環(huán)或case語句 continue:跳過本次循環(huán),實(shí)例5,#!/bin/sh number=1 while $number -le 10 do useradd user$number echo Add a user whose name is:user$number number=expr $number + 1 done,建立10個(gè)用戶帳戶,實(shí)例6,#!/bin/sh counterf=0 counterd=0 for files in * do if -f $files ;then counterf=expr $counterf + 1 elif -d $files ;then counterd=expr $counterd + 1 fi done ech
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030洗衣設(shè)備共享平臺(tái)加盟商盈利模型與退出機(jī)制報(bào)告
- 2025-2030泡沫滅火劑技術(shù)革新工藝流程安全性能評估分析
- 2025-2030汽車零部件行業(yè)行業(yè)前景及技術(shù)創(chuàng)新與市場競爭研究報(bào)告
- 智能農(nóng)業(yè)物聯(lián)網(wǎng)解決方案設(shè)計(jì)
- 山西省2026年小學(xué)藝術(shù)欣賞能力考核試卷及答案
- 公共營養(yǎng)師能力測評備考資料試題及答案
- 線上教學(xué)總結(jié)及改進(jìn)方案
- 小學(xué)英語時(shí)態(tài)語法全面總結(jié)教學(xué)方案
- 幼兒園安全教育月活動(dòng)方案12篇
- 2025年色彩搭配師全國資格認(rèn)證試題及答案
- 安全帽使用規(guī)范制度
- 2026國家電投集團(tuán)蘇州審計(jì)中心選聘15人筆試模擬試題及答案解析
- 2026年桐城師范高等??茖W(xué)校單招職業(yè)技能考試題庫及答案1套
- 霧化吸入操作教學(xué)課件
- 2025年小學(xué)圖書館自查報(bào)告
- 【語文】廣東省佛山市羅行小學(xué)一年級上冊期末復(fù)習(xí)試卷
- 2025年醫(yī)療器械注冊代理協(xié)議
- 新疆三校生考試題及答案
- 2025新疆亞新煤層氣投資開發(fā)(集團(tuán))有限責(zé)任公司第三批選聘/招聘筆試歷年參考題庫附帶答案詳解
- 圍手術(shù)期心肌梗塞的護(hù)理
- 超市門口鑰匙管理制度
評論
0/150
提交評論