linux腳本.ppt_第1頁
linux腳本.ppt_第2頁
linux腳本.ppt_第3頁
linux腳本.ppt_第4頁
linux腳本.ppt_第5頁
免費預覽已結(jié)束,剩余22頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、Linux shell,Page 2/28,腳本概念,無需編譯,解釋執(zhí)行 文本文件形式存在 強大的正則表達式操作 運行速度慢 數(shù)據(jù)類型支持少 用于系統(tǒng)管理和文件操作,Page 3/28,腳本運行,編寫腳本程序 改變腳本程序文件的權(quán)限為可執(zhí)行 運行腳本程序 # ./腳本程序 # bash 腳本程序 # . ./腳本程序 # exec 腳本程序,Page 4/28,基本腳本編程,變量 條件測試 流程控制,Page 5/28,環(huán)境變量,使用set命令查看環(huán)境變量 set 常用環(huán)境變量 USER UID SHELL HOME PWD PATH PS1 PS2 環(huán)境變量配置文件 /etc/bashrc

2、/etc/profile /.bash_profile /.bashrc,Page 6/28,位置變量,$ ./exam01 one two tree four five six,Page 7/28,預定義變量,Page 8/28,用戶自定義變量,自定義變量的設(shè)置 $ DAY=sunday 自定義變量的查看與引用 $ echo $DAY 自定義變量的輸出 $ export DAY 自定義變量的清除 $ unset DAY,Page 9/28,腳本,第一行必須指出用哪個程序來執(zhí)行腳本,內(nèi)核根據(jù)它來確定用哪個程序來翻譯腳本中的行如: #!/bin/bash 注釋,以“”開頭的文字描述 可執(zhí)行語句與

3、bash shell 結(jié)構(gòu) 例: vi firstscript #!/bin/bash #first script echo “Hello world !”,Page 10/28,條件測試,使用test命令 語法: 使用括號 語法: 條件表達式的值為真返回零,為假時返回非零值 man test(顯示測試表達示的寫法),test 條件表達式, 條件表達式 ,Page 11/28,條件測試篇,文件狀態(tài)測試,示例: -s haison.c 0表示成功,其他為失敗,下同。,邏輯操作符 -a 邏輯與(and),操作符兩邊均為真,結(jié)果為真,否則為假。 -o 邏輯或(or),操作符兩邊一邊為真,結(jié)果為真,否

4、則為假。 ! 邏輯否,條件為假,結(jié)果為真,反之。,示例: -r haison.c a w hai.c -r baison.c ; 模式2) 命令2 ; 模式3) 命令3 ; esac,Page 18/28,流程控制(Cont.),#!/bin/bash #case select case $1 in start) echo command is starting ok ; stop) echo command is stoping ok ; restart) echo command is stoping ok echo command is starting ok ; *) echo “Us

5、age $0 stop|start|restart ; esac,Page 19/28,流程控制(Cont.),for循環(huán) 語法,for 變量名 in 列表 do 命令 done,Page 20/28,流程控制(Cont.),#/bin/bash for i in cat file do echo “$i” done,Page 21/28,流程控制(Cont.),#/bin/bash account =cut -d “:” -f1 /etc/passwd | sort echo “The following is your linuxs account” for i in $account d

6、o echo “$i” done,Page 22/28,流程控制(Cont.),while循環(huán) 語法,while 條件 do 命令 done,Page 23/28,函數(shù)篇,格式 函數(shù)名 () 命令 所有函數(shù)在使用前必須定義,這意味著必 須將函數(shù)放在腳本開始部分,直至shell解釋 器首次發(fā)現(xiàn)它,才可以使用。 調(diào)用函數(shù)僅使用其函數(shù)名即可,要傳給函 數(shù)的變量跟在函數(shù)后面。 函數(shù)里面定義的變量以下劃線(_)開始。 函數(shù)可以放在同一個文件中作為一段代 碼,也可以放在只包含函數(shù)的單獨文件中,文 件也必須以#!/bin/bash開頭。,示例1 #!/bin/bash #funTest #to test t

7、he function DATE=date Hello() echo “Hello,today is $DATE” Hello,示例2 #!/bin/bash #funTest #to test the function . ./Hello Hello,Page 24/28,習題,1、批量創(chuàng)建用戶:#!/bin/bashi=$2while $i -le $1 do adduser $3$i;echo $3$i:$3$i pass;chpasswd pass;let i=i+1;done,Page 25/28,習題,2、批量刪除用戶:#!/bin/bash#batch del useri=$2W

8、hile $i le “$1” do userdel r user$3$i let i=i+1 done,Page 26/28,習題,3、批量刪除用戶(用戶創(chuàng)建的用戶):#!/bin/bash#batch del userls /home txtfor i in cat txt do userdel r $i done,Page 27/28,習題,4、備份(完全備份加增量備份)(保留時間為一個月):#!/bin/bash#backupif date +%d = “01” #每月1日完全備份 then rm f /mnt/sda1/backup/* rm f /mnt/sda1/backup/cl/* tar czf /mnt/sda1/backup/date +%Y-%m-%d.tar /var/www/html elif date +%A = “Friday” #

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論