




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上 一、腳本格式vim shell.sh#!/bin/bash/聲明腳本解釋器,這個#號不是注釋,其余是注釋#Program:/程序內容說明#History:/時間和作者二、shell變量的種類用戶自定義變量:由用戶自己定義、修改和使用與定義變量:Bash與定義的特殊變量,不能直接修改位置變量:通過命令行給程序傳遞執行的參數1、定義變量:變量名要以英文字母或下劃線開頭,區分大小寫。格式:變量名=值輸出變量:echo $變量名2、鍵盤輸入為變量內容:格式:read -p "信息" 變量名如:read -p "pewase input your
2、 name:" name3、不同引號對變量的作用雙引號"":可解析變量,$符號為變量前綴。單引號'':不解析變量,$為普通字符。反引號:將命令執行的結果輸出給變量。三、shell條件測試1、test命令:用途:測試特定的表達式是否成立,當條件成立時,命令執行后的返回值為0,否則為其他數字。格式:test 條件表達式 條件表達式 (注意:與表達式之間存在空格) 2、常見的測試類型:測試文件狀態格式: 操作符 文件或目錄 如:if -d /etc thenecho "exists"elseecho
3、 "not exists"fi常見的測試操作符:-d:測試是否為目錄-e:測試目錄或文件是否存在-f:測試是否為文件-r:測試當前用戶是否有讀權限-w:測試當前用戶是否有寫權限-x:測試當前用戶是否有執行權限-L:測試是否為符號鏈接文件字符串比較格式: 字符串1 = 字符串2 字符串1 != 字符串2 -z 字符串 如:read -p 'name:' nameread -p 'pass:' passif $name = 'admin' && $pass = '123'thenecho '
4、登錄成功'elseecho '登錄失敗'if常用的測試操作符:=:字符串內容相同。!=:字符串內容不同。-z:字符串內容為空。整數值比較格式: 整數1 操作符 整數2 如:age=30if $age -ge 18 thenecho "已成年"elseecho "未成年"fi常用的測試操作符:-eq:等于-ne:不等于-gt:大于-lt:小于-le:大于或等于-ge:小于或等于邏輯測試格式: 表達式1 操作符 表達式2 常用操作符:-a或&&:邏輯與-o或|:邏輯或!:邏輯非四、流程判斷:1、條件判斷a、if語句格式
5、:單分支:if 條件表達式then 命令序列fi如:age=30if $age -ge 18 thenecho "已成年"elseecho "未成年"fi多分枝:if 條件表達式then 命令序列elif命令序列fi如:score=87if $score -lt 60 ;thenecho '60以下'elif $score -gt 60 && $score -lt 70 ;thenecho '6070之間'elif $score -ge 70 && $score -lt 80 ;thenec
6、ho '70 80之間'elseecho '優秀'fib、case格式:case $變量名稱 in"第一個變量內容");"第二個變量內容");*)/最后一個變量內容都會用*來代表其它值,不包含前面的變量內容;esac如:case $1 instart) echo 'start MYSQL service.'stop)echo 'stop MYSQL service.'*)echo "Usage: $0 start|stop"esac2、循環控制跳出本次循環:continu
7、e結束循環:breaka、while循環格式:while 條件表達式 do程序段落done如:num=3while $num -gt 0 doecho $numnum=$($num-1)doneb、for循環格式:for var in con1 con2 con3do程序段done如:for i in user0 user1 user2 user3echo $idone格式:for (i=0;i<10 1+)do程序段done如:for (i=0;i<10;i+)doecho $iuseradd user$iecho 123 | password -stdin_user$idone
8、3、函數使用定義一個函數:在程序的最前面function 函數名()或者function 函數名如:function printit()echo "your choice is $1"調用:直接使用函數名如:printit 1傳遞參數:函數名 參數1 參數1如:printit 2五、Shell文本操作1、Find查找命令的使用find . -name "*.text"/在當前目錄下查找已txt為后綴的文件fing .-name "a-z*"/在當前目錄下查找開頭字母的文件find /etc -name "host*"
9、;/查找/etc目錄下以host開頭的文件find . -perm 755/在當前目錄下查找屬性為755的文件find -user root/在當前目錄下查找屬主為root的文件find /var -mtime -5/在/var下查找更改時間在5天內的文件find /var -mtime +3/在/var下查找更改時間在3天以前的文件find /etc -type d/查找文件類型為d的目錄文件find /etc -typt l/查找文件類型為l的鏈接文件find . -size +c/查找文件大小在1M的文件2、正則表達式linux/以linux開頭的$php/以php結尾的./匹配任意單字
10、符.+/匹配任意多個字符.*/匹配0個或多個字符0-9a-z/匹配內任意一個字符(linux)+/出現多次linux單詞(web)2/web出現了2次以上/轉譯3、grep詳解grep "li qq"*/在所有文件中查找li qq文件grep -c "file" a/在文件中查找有多少行匹配到filegrep -n "file" a/在文件中查找有多少行匹配file,同時顯示行和行號grep -i "file" a/在文件中查找file,并不區分大小寫grep -v "file" a/在文件中過
11、濾掉file所在的行grep -E "2017:22:50-9" a/在文件中查找在時間在2017:22:50到59的所在行grep -E "210" a/在文件中查找不號寒210的行grep -E "h*p" a/查找包含h和p的行grep -E "5-86-90-3" a/查找大于560小于893的行grep -E "d" a/在文件中查找以d開頭的行grep -E "d" a/在文件中查找不是以d開頭的行4、awk命令:簡介:awk是一個強大的文本分析工具,相對于gre
12、p的查找,sed的編輯,awk在其對數據分析并生成報告時,顯得尤為強大。簡單來說awk就是把文件逐行的讀入,以空格為默認分隔符將每行切片,切開的部分再進行各種分析處理。awk語言的最基本功能是在文件或者字符串中基于指定規則瀏覽和抽取信息,awk抽取信息后,才能進行其他文本操作。完整的awk腳本通常用來格式化文本文件中的信息。通常,awk是以文件的一行為處理單位的。awk每接收文件的一行,然后執行相應的命令,來處理文本。格式:awk 'pattern + action' filenamespattern:查找內容action:匹配規則awk 'pring $0'
13、access.log/查找文件中的每一列awk 'print $1"t"$7' access.log/查找文件中第一列和第七列cat file | awk '$0 ! /5/'|grep "php"/匹配Ip 地址的統計,!為不匹配例:for i in cat /etc/passwd | head | awk -F:'print $1'doecho $idone-F-以什么符號分割head-去前多少行,默認是10行5、sed行定位使用簡介:sed是非交互式的編輯器。它不會修改文件,除
14、非使用shell重定向來保存結果。默認情況下,所有的輸出行都被打印到屏幕上。 選項 功能 -e 進行多項編輯,即對輸入行應用多條sed命令時使用 -n 取消默認的輸出 -f 指定sed腳本的文件名sed -n '2'p file/只打印第二行,不打印其他行sed -n '1,4'p file/從第一行到第四行的記錄sed -n '/los/'p file/打印匹配los的行sed -n '4,/los/'p file/打印從第四行到匹配los的之間所有
15、行sed '1,2'd file/吧第一行和第二行全部刪除6、Uniq行定位使用簡介:uniq命令用于報告或忽略文件中的重復行,一般與sort命令結合使用。語法 uniq(選項)(參數)選項 :-c或count:在每列旁邊顯示該行重復出現的次數;-d或-repeated:僅顯示重復出現的行列;-f<欄位>或-skip-fields=<欄位>:忽略比較指定的欄位;-s<字符位置>或-skip-chars=<字符位置>:忽略比較指定的字符;-u或unique:僅顯示出一次的行列;-w<字符位置>或-check-chars=<字符位置>:指定要比較的字符。uniq -c file/打印緊挨的重復行出現的次數uniq -d file/只打印重復的行awk 'print $1' /var/log/httpd/access_log | sort|uniq -c/把apache網站的所有訪問ip全部統計出來,并打印出統計次數。7、spli行定位簡介:可以將一個大文件分割成很多個小文
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 禮儀用品行業品牌形象塑造與品牌傳播策略研究考核試卷
- 電機運行與維護管理考核試卷
- 耐火土石礦山開采對地形地貌的影響考核試卷
- 抗疫“心”能量-生命主題教育課程
- 水電工程建設項目后評價方法與案例考核試卷
- 肉類罐頭銷售渠道拓展與管理考核試卷
- 體育用品租賃業務中的用戶體驗優化考核試卷
- 糖果的食品安全突發事件應對考核試卷
- 少兒美術教育課程
- 幼兒園的法制教育課件
- 青馬工程筆試試題及答案
- 豆粕交易合同協議
- 項目設計安全管理制度
- 電子化采購招投標平臺系統建設項目解決方案
- 小學京劇知識
- (2025)漢字聽寫大會競賽題庫(含答案)
- 鐵塔土建施工方案
- 2025年演出經紀人《演出市場政策與經紀實務》考前點題卷一
- GB/T 45235-2025電子電氣產品中雙酚A的測定高效液相色譜法
- 消防管線施工方案
- 2025年度祠堂宗教用品銷售承包合同3篇
評論
0/150
提交評論