版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、linux腳本程序編寫基礎(chǔ)2012071715:02:43|分類:Linux|標(biāo)簽:linux開發(fā)linux筆記linux|字號訂閱1.Linux腳本編寫基礎(chǔ)1.1語法基本介紹1.1.1開頭程序必須以下面的行開始(必須放在文件的第一行):#!binsh符號#!用來告訴系統(tǒng)它后面的參數(shù)是用來執(zhí)行該文件的程序。在這個例子中我們使用binsh來執(zhí)行程序。當(dāng)編輯好腳本時,如果要執(zhí)行該腳本,還必須使其可執(zhí)行。要使腳本可執(zhí)行:編譯chmodxfil
2、ename這樣才能用.filename來運(yùn)行1.1.2注釋在進(jìn)行shell編程時,以#開頭的句子表示注釋,直到這一行的結(jié)束。我們真誠地建議您在程序中使用注釋。如果您使用了注釋,那么即使相當(dāng)長的時間內(nèi)沒有使用該腳本,您也能在很短的時間內(nèi)明白該腳本的作用及工作原理。1.1.3變量在其他編程語言中您必須使用變量。在shell編程中,所有的變量都由字符串組成,并且您不需要對變量進(jìn)行聲明。要賦值給一個變量,您可以這樣寫:#!binsh#對變量賦值
3、:a=“hellowld“#現(xiàn)在打印變量a的內(nèi)容:echo“Ais:“echo$a有時候變量名很容易與其他文字混淆,比如:num=2echo“thisisthe$numnd“這并不會打印出“thisisthe2nd“,而僅僅打印“thisisthe“,因?yàn)閟hell會去搜索變量numnd的值,但是這個變量時沒有值的??梢允褂没ɡㄌ杹砀嬖Vshell我們要打印的是num變量:sed:Sed是一個基本的查找替換程序??梢詮臉?biāo)準(zhǔn)輸入(比如命令管
4、道)讀入文本,并將結(jié)果輸出到標(biāo)準(zhǔn)輸出(屏幕)。該命令采用正則表達(dá)式(見參考)進(jìn)行搜索。不要和shell中的通配符相混淆。比如:將linuxfocus替換為LinuxFocus:cattext.file|sedslinuxfocusLinuxFocusnewtext.fileawk:awk用來從文本文件中提取字段。缺省地,字段分割符是空格,可以使用F指定其他分割符。catfile.txt|awkFprint$1““$3這里我們使用,作為字
5、段分割符,同時打印第一個和第三個字段。如果該文件內(nèi)容如下:AdamB34IndiaKerryMiller22USA命令輸出結(jié)果為:AdamBIndiaKerryMillerUSA2)概念:管道重定向和backtick這些不是系統(tǒng)命令,但是他們真的很重要。管道(|)將一個命令的輸出作為另外一個命令的輸入。grep“hello“file.txt|wcl在file.txt中搜索包含有”hello”的行并計(jì)算其行數(shù)。在這里grep命令的輸出作為
6、wc命令的輸入。當(dāng)然您可以使用多個命令。重定向:將命令的結(jié)果輸出到文件,而不是標(biāo)準(zhǔn)輸出(屏幕)。寫入文件并覆蓋舊文件加到文件的尾部,保留舊文件內(nèi)容。反短斜線使用反短斜線可以將一個命令的輸出作為另外一個命令的一個命令行參數(shù)。命令:find.mtime1typefprint用來查找過去24小時(mtime–2則表示過去48小時)內(nèi)修改過的文件。如果您想將所有查找到的文件打一個包,則可以使用以下腳本:#!binsh#Theticksareba
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- linux下編寫c源程序并用編譯運(yùn)行
- linux字符設(shè)備驅(qū)動程序編寫基本流程
- dep擴(kuò)展腳本編寫指南
- linux_bash腳本編程大全
- linux_shell(腳本)編程入門_實(shí)例講解詳解
- linux基礎(chǔ)
- c#編寫聊天程序
- qt編寫多窗口程序
- hadoop 上編寫 mapreduce 程序
- capl程序編寫簡單教程
- linux大作業(yè)課程設(shè)計(jì)說明書-linux unix shell腳本編程
- 學(xué)習(xí)使用c#為unity3d編寫腳本
- linux基礎(chǔ)培訓(xùn)
- linux學(xué)習(xí)基礎(chǔ)
- step7程序的編寫
- fidic編寫的標(biāo)準(zhǔn)招標(biāo)程序
- 注冊程序及材料編寫要求
- 安全專篇編寫程序
- linux下串口程序開發(fā)
- linux設(shè)備驅(qū)動程序
評論
0/150
提交評論