shell編程入門.doc

shell編程入門.doc

ID:49759232

大小:70.00 KB

頁數(shù):25頁

時間:2020-03-04

shell編程入門.doc_第1頁
shell編程入門.doc_第2頁
shell編程入門.doc_第3頁
shell編程入門.doc_第4頁
shell編程入門.doc_第5頁
資源描述:

《shell編程入門.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、Shell程序設(shè)計學(xué)習(xí)內(nèi)容:1.什么是shell2.語法:變量、條件判斷、程序控制3.函數(shù)4.命令和命令的執(zhí)行5.Here文檔6.調(diào)試7.Grep命令和正則表達(dá)式8.Find命令一、什么是shell?Shell是一個作為用戶與Linux系統(tǒng)間接口的程序,它允許用戶向操作系統(tǒng)輸入需要執(zhí)行的命令。在一個linux系統(tǒng)中可以安裝多個shell,這些shell和其他程序一起環(huán)繞在linux內(nèi)核四周。默認(rèn)安裝的標(biāo)準(zhǔn)是/bin/sh,它是GNU工具集中的bash。使用/bin/bash–version可以查看版本。Word資料Shell歷史版本:sh

2、csh,、tcsh、zshksh、pdkshbash一、shell腳本編寫、運行、調(diào)試1.腳本均以#!/bin/bash開頭。2.腳本中的‘#’為注釋符。3.使用exit為腳本設(shè)置返回一個退出碼,注意0表示的是執(zhí)行成功。示例:#!/bin/bash#thisismyfirstshell!echo“helloword!”exit04.設(shè)置腳本為可執(zhí)行:chmodu+xfilename.sh5.執(zhí)行:./filename.sh6.sh–x./filename.sh二、shell語法1、變量:無需事先聲明,直接使用,在訪問時要加$在變量前。例如

3、:Str=helloecho$Stra.這兩行語句將在屏幕輸出一個“hello”,shell區(qū)別大小寫,定義變量時應(yīng)該注意。b.如果為變量所賦的字符串中含有空格,table或換行符應(yīng)使用“”標(biāo)示,例如“helloword!”Word資料c.變量在引號中依然有效如echo“thisis$Str!”依然會輸出:thisishello!練習(xí)示例:(注:后續(xù)的示例中只有關(guān)鍵部分,練習(xí)時補(bǔ)全)echo“inputpassword:”readpasdecho“thepasswordis$pasd”d.如果需要輸出字符$Str可以用單引號和來處理:‘

4、$Str’和$Str輸出的都是$Str不是變量表示的值,shell中的變量一般都是字符串形式。e:環(huán)境變量,介紹幾種:$HOME當(dāng)前用戶的家目錄$PATH搜索命令的目錄列表$0shell腳本的名字$#傳遞給腳本的參數(shù)個數(shù)$$腳本的進(jìn)程號f:參數(shù)變量:$1,$2腳本的程序參數(shù)$*列出所有參數(shù)$@S*的一種變體,它參數(shù)不會擠在一塊。g:變量做整形數(shù)字使用:a=123let“a+=1”Word資料echo“a=$a”1、條件1)使用test或[]如iftest–ffile.cthen…..fi以上代碼也可寫成如下形式(盡量使用這種形式)if[

5、-ffile.c](注意:if語句和[之間有個空格]then….fi完整示例:#!/bin/bashecho“isitmorning?Pleaseansweryesorno”readtimeofdayif[$timeofday=“yes”];thenecho“goodmorning”elseecho“goodafternoon”fiexit02)elif語句,在if,elseWord資料語句中增加分支判斷。如下示例:#!/bin/bashecho“isitmorning?Pleaseansweryesorno”readtimeofdayi

6、f[$timeofday=“yes”];thenecho“goodmorning”elif[$timeofday=“no”]thenecho“Goodafternoon”elseecho“sorry,$timeofdaynotrecognized.Enteryesorno”exit1fiexit01、一個與變量有關(guān)的問題。如上程序,如果沒有輸入Yes和no直接按回車鍵,會出現(xiàn)什么結(jié)果呢?程序會有出錯信息。原因是。。。避免該問題產(chǎn)生的方法對變量使用雙引號“$Str”2、for語句使用for語句可以循環(huán)處理一組值,這組值可以是任意字符串的集合

7、。它的語法形式如下:forvariableinvaluesWord資料dosomethingdone示例:#!/bin/bashForfooinhellomyname129doecho$foodoneexit0使用通配符擴(kuò)展for循環(huán)#!/bin/shforfilein$(ls*.sh);doecho$filedoneexit05、while語句語法結(jié)構(gòu):whileconditiondoDosometingdone示例:一個簡陋的密碼檢查程序Word資料#!/bin/bashecho“Enterpassword”readpawordwhi

8、le[“$paword”!=“secret”]doecho“sorry,tryagain”readpaworddoneexit0字符串比較:string=stringstring!=strin

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。