生物信息學(xué)基礎(chǔ)教程.ppt課件_第1頁(yè)
生物信息學(xué)基礎(chǔ)教程.ppt課件_第2頁(yè)
生物信息學(xué)基礎(chǔ)教程.ppt課件_第3頁(yè)
生物信息學(xué)基礎(chǔ)教程.ppt課件_第4頁(yè)
生物信息學(xué)基礎(chǔ)教程.ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、生物信息學(xué)基礎(chǔ)教程1感謝你的觀看2019年8月28本節(jié)內(nèi)容本節(jié)內(nèi)容n正則表達(dá)式n正則表達(dá)式的定義與表示方法n正則表達(dá)式中的元字符(metacharacter)nVIM編輯器ngrep命令nsed編輯器nawk工具2感謝你的觀看2019年8月28正則表達(dá)式n所謂正則表達(dá)式(regular expression, RE), 指的是符合某種模式的字串,常用于從文件中或者字符串中查找和替換某些符合某種規(guī)則的字串3感謝你的觀看2019年8月28VIM教程linux下最常用的文本編輯器4感謝你的觀看2019年8月28VIM編輯器n三種模式:各種模式之間切換n從命令行模式到插入模式:按下i鍵n從命令行模式到

2、附加模式:按下a鍵n返回命令行模式:按下ESC鍵n退出編輯n保存并退出:在命令行模式按下:wqn不保存退出:在命令行模式按下:q!n保存:在命令行模式按下:wn另存為其他文件名:按下:w filename5感謝你的觀看2019年8月28VIM編輯功能n光標(biāo)跳到文件頭:命令行模式下按2下gn光標(biāo)跳到文件尾:按下:$n光標(biāo)跳到行首:按下n光標(biāo)跳到行末:按下$n跳到100行:按下100g6感謝你的觀看2019年8月28VIM查找功能n底行模式下輸入/pattern/回車,對(duì)應(yīng)符合pattern的文本就會(huì)顯示為高亮n底行模式下輸入:m,n/pattern/,就會(huì)在第m行到第n行查找pattern并高亮

3、顯示7感謝你的觀看2019年8月28grep教程教程正則表達(dá)式的應(yīng)用8感謝你的觀看2019年8月28grep簡(jiǎn)介n是Global search regular expression (RE) and Print out the line的縮寫n強(qiáng)大的文本搜索工具,使用正則表達(dá)式搜索文本,并打印匹配的行n在一個(gè)或者多個(gè)文件中搜索字符串模式,搜索的結(jié)果輸出到屏幕,不影響文件內(nèi)容9感謝你的觀看2019年8月28grep用法ngrep option pattern input_files10感謝你的觀看2019年8月28常用常用grep命令選項(xiàng)命令選項(xiàng)-?為數(shù)值,同時(shí)顯示匹配行的前后?行g(shù)rep -2

4、 grep test.txt同時(shí)顯示匹配行的前后2行-c-count,只打印匹配行的行數(shù),而不輸出匹配行-f file從輸入文件中提取模式-i-ignore-case,忽略大小寫-q-quiet,取消顯示-l僅打印匹配模式的文件清單-l打印不匹配模式的文件清單-n-line-number,在匹配行前打印行號(hào)-s-silent,不顯示錯(cuò)誤信息-v-revert-match,只顯示不匹配的行-w-word-regexp,如果被引用,就把表達(dá)式作為一個(gè)單詞搜索11感謝你的觀看2019年8月28grep正則表達(dá)式元字符正則表達(dá)式元字符錨定行的開(kāi)始grep匹配所有以grep開(kāi)始的行$錨定行的結(jié)束grep

5、$匹配所有以grep結(jié)束的行.匹配一個(gè)非換行符的任意字符gr.p匹配gr后跟一個(gè)任意字符,后為p的行*匹配0個(gè)或多個(gè)先前字符*grep匹配所有0個(gè)或多個(gè)空格緊跟grep的行匹配一個(gè)指定范圍的字符Ggrep匹配包含Grep或grep的行匹配不在指定范圍內(nèi)的一個(gè)字符A-FH-Zrep匹配所有不在A-F和H-Z范圍內(nèi)字符后跟rep的行( )標(biāo)記匹配字符(love)中可以匹配love,且love被標(biāo)記為1分別錨定一個(gè)單詞的起始和結(jié)束匹配以grep結(jié)束的單詞x5, x5,,x5,10 x正好重復(fù)5次的行、至少重復(fù)5次的行、重復(fù)次數(shù)在5-10次之間的行w = A-Za-z0-9W=A-Za-z0-9匹配所

6、有單個(gè)(非)字母和數(shù)字字符bgrepb只匹配單詞grep,不匹配egrep等12感謝你的觀看2019年8月28練習(xí)題:這些命令都能干啥?1.ls l | grep a2.grep test d*3.grep test aa bb cc4.grep a-z5 aa5.grep w(es)t.*1 aa6.grep n datafile7.grep 4$ datafile8.grep 5. datafile9.grep .5 datafile10.grep wesn datafile11.grep A-ZA-Z A-Z datafile12.grep ss* datafile13.grep a-z

7、9 datafile14.grep datafile13感謝你的觀看2019年8月28非交互性文本編輯非交互性文本編輯14感謝你的觀看2019年8月28sed簡(jiǎn)介n首先用which sed查看一下sed的位置n一個(gè)非交互性文本編輯器,編輯文件或標(biāo)準(zhǔn)輸入導(dǎo)出的文件拷貝nsed可以隨意編輯小文件或者大文件n一次性處理所有改變,高效率n通過(guò)行號(hào)和正則表達(dá)式指定需要編輯的行15感謝你的觀看2019年8月28sed用法n從文件的一個(gè)文本行或標(biāo)準(zhǔn)輸入中讀取數(shù)據(jù),并將其拷貝到一個(gè)編輯緩沖區(qū)n讀取命令行或者腳本的第一條命令,并用該命令查找模式或定位行號(hào)并編輯,重復(fù)過(guò)程直到命令結(jié)束nsed option sed

8、_command input_filensed option f sed_script_file input_filensed_script_file option input_file16感謝你的觀看2019年8月28sed命令的選項(xiàng)-nQuiet, 不自動(dòng)打印編輯行,默認(rèn)是打印的-e下一命令是編輯命令,使用多項(xiàng)編輯時(shí)加入此選項(xiàng)-f其后加sed腳本文件17感謝你的觀看2019年8月28sed定位行號(hào)的方法 x行號(hào),指定某一行 x, y指定x-y范圍的行 xy從第x行開(kāi)始,每隔y行 /pattern/查詢包含該模式的行 x,y!查詢不包含指定行號(hào)x和y的行18感謝你的觀看2019年8月28基本

9、sed編輯命令p打印匹配行sed n 2,3p test.txtsed n /movie/p temp.txt=顯示文件行號(hào)sed e /music/= temp.txta在定位行號(hào)后附加新文本sed /jack/ a “here add new line”p temp.txti在定位行號(hào)后插入新文本sed 4 i “here add new line”p temp.txtd刪除定位行sed /music/d temp.txtn從另一個(gè)文本中讀取下一行,并附加到下一行sed /movie/n temp2.txt temp.txtc用新文本替換定位文本sed 4 c “i like it” te

10、mp.txts用替換模式替換相應(yīng)模式sed s/source/okstr/”add before” &/p temp.txtr從另一個(gè)文本中讀取文本sed /name/r temp2.txt temp.txtw寫文本到另一個(gè)文件sed s/name/”my ” &/w temp2.txt temp.txt19感謝你的觀看2019年8月28練習(xí)題:這些命令能干什么?sed s/.$/g temp.txtsed e /abcd/d temp.txtsed s/ */ /g temp.txtsed s/*/g temp.txtsed s/.*/g temp.txtsed /$/d t

11、emp.txtsed s/./g temp.txtsed s/COL()/g temp.txtsed s/g temp.txt20感謝你的觀看2019年8月28文件模式提取教程文件模式提取教程21感謝你的觀看2019年8月28AWK簡(jiǎn)介簡(jiǎn)介nLinux下的awk有三個(gè)版本:awk、nawk、gawk,一般所說(shuō)的awk是指/bin/awk,也就是gawk (GNU awk)nawk的功能:n基于指定規(guī)則從文件或者字符串中分解抽提信息n基于指定的規(guī)則輸出數(shù)據(jù)22感謝你的觀看2019年8月28awk的三種執(zhí)行方式1.awk option awk_script input_file1 input_fi

12、le2 2.將awk_script放入腳本文件并以#!/bin/awk f 作為首行,并賦予該腳本可執(zhí)行權(quán)限,然后在shell下調(diào)用該腳本名稱執(zhí)行awk_script的內(nèi)容:awk_file input_file3.將所有awk_script放入一個(gè)單獨(dú)的腳本文件,然后用awk f awk_file input_file(s)執(zhí)行腳本23感謝你的觀看2019年8月28awk腳本的組成n可由一條或多條awk_cmd組成,兩條awk_cmd之間一般以NEWLINE分割nawk_cmd由兩部分組成:awk_pattern actions nawk命令的一般形式awk BEGIN actions aw

13、k_pattern1 actions awk_patternN actions END actions input_file其中BEGIN 和END模塊是可選的24感謝你的觀看2019年8月28awk腳本的運(yùn)行機(jī)制1.如果存在BEGIN區(qū)塊,執(zhí)行其中的actions2.從輸入文件中讀取一行,稱為讀入一條記錄3.將讀入的記錄按照分隔符(FS/IFS)分割為多個(gè)字段,依次為$1,$2,., 而$0表示整條記錄。4.將當(dāng)前輸入記錄與awk_pattern相比較,如果匹配則執(zhí)行actions,如果不匹配則跳過(guò)讀入下一條記錄,重復(fù)執(zhí)行3,4,直到文件尾5.awk把輸入文件的數(shù)據(jù)讀入內(nèi)存,然后操作內(nèi)存中的

14、輸入數(shù)據(jù)副本,不會(huì)修改輸入文件的內(nèi)容6.awk總是輸出到標(biāo)準(zhǔn)輸出,如果需要輸出到文件,可采用重定向25感謝你的觀看2019年8月28awk_pattern的格式1.正則表達(dá)式 /regexp/通用的正則元字符: $ . | () *+是awk特有的元字符,匹配其前的單個(gè)字符一次以上?也是awk特有的元字符,匹配其前的單字符0/1次舉例:awk /*$0.0-90-9.*/ input_file2.布爾表達(dá)式 “=”,“”, “/regexp/”,“&”, “|”舉例awk $3 /d/ input_fileawk ($1 10) print ok input_file 26感謝你的觀看

15、2019年8月28actions的格式nactions是對(duì)awk讀取記錄進(jìn)行的操作nactions由一條或多條語(yǔ)句或命令組成,語(yǔ)句之間用分號(hào)分隔27感謝你的觀看2019年8月28awk命令print “$1= ”, $1printf:與c語(yǔ)言的printf類似next:讀取下一條記錄并處理nextfile:讀取文件列表的下一個(gè)文件exit:awk停止執(zhí)行并跳出。如果有END存在,awk會(huì)執(zhí)行END的actions28感謝你的觀看2019年8月28awk語(yǔ)句n賦值語(yǔ)句awk BEGIN x=1 ; y=3 ; x=y ; print x= x ; y= y awk BEGIN x=3 ; x+=

16、2 ; y=x+2 ; print x= x ; y= y n流程控制結(jié)構(gòu) if (condition) then-body else else-body while (condition) body do body while (condition) for (initialization; condition; increment) body 與C語(yǔ)言的for結(jié)構(gòu)的語(yǔ)法相同 break : 跳出包含它的for、while、do-while 循環(huán) continue : 跳過(guò)for、while、do-while循環(huán)的body的剩余部分,而立刻進(jìn)行下一次循環(huán)的執(zhí)行29感謝你的觀看2019年8月2

17、8awk內(nèi)部變量n自動(dòng)內(nèi)部變量自動(dòng)內(nèi)部變量NF:當(dāng)前輸入字段的字段數(shù)NR:當(dāng)前輸入文件已經(jīng)被讀過(guò)的行數(shù)FNR:所有輸入文件中已經(jīng)被讀過(guò)的行數(shù)FILENAME:當(dāng)前輸入文件的文件名ARGC:命令行參數(shù)個(gè)數(shù),輸入文件數(shù)目+1ARGIND:當(dāng)前處理文件在ARGV內(nèi)的索引n字段變量:字段變量:$1, $2, , $NF, $0n其他內(nèi)部變量其他內(nèi)部變量FS : 輸入記錄的字段分隔符(默認(rèn)是空格和制表符) OFS : 輸出記錄的字段分隔符(默認(rèn)是空格) OFMT : 數(shù)字的輸出格式(默認(rèn)是 %.6g) RS : 輸入記錄間的分隔符(默認(rèn)是NEWLINE) ORS : 輸出記錄間的分隔符(默認(rèn)是NEWLI

18、NE) ARGV : 命令行參數(shù)數(shù)組 ENVIRON : 存儲(chǔ)系統(tǒng)當(dāng)前環(huán)境變量值的數(shù)組,它的每個(gè)成員的索引就是一個(gè)環(huán)境變量名舉例:cat /etc/passwd | awk BEGIN FS=: print User name: $1,UID: $4 30感謝你的觀看2019年8月28awk自定義變量n定義變量:varname=valuen表達(dá)式中不帶引號(hào)的字符串即被視為變量,如果之前未被賦值,默認(rèn)值為0或“”n用法:awk awk_script awkvar1=value1 awkvar2=value2 . input_file n優(yōu)先級(jí):awk_script中的變量定義優(yōu)先于命令行中的變量

19、定義n如果需要調(diào)用shell變量,可以采用awk awk_script awkvar1=shellvar1 awkvar2=shellvar2 . input_file 31感謝你的觀看2019年8月28awk內(nèi)置函數(shù)n數(shù)值函數(shù):int(x), sqrt(x), exp(x), log(x), sin(x), cos(x), atan2(y,x), rand(), srand(x), srand()n字符串函數(shù):index(in, find), length(s), match(s, r), sprintf(), sub(p,r,t), gsub(p,r,t), substr(str, st,

20、 len), split(s,a,fs), tolower(str), toupper(str)n系統(tǒng)函數(shù):close(filename), system(command)32感謝你的觀看2019年8月28awk自定義函數(shù)n自定義函數(shù)格式:function fun_name(param_list) function_body n舉例:awk print “sum=”, SquareSum($1, $2) function SquareSum(x,y) sum=x*x+y*y; return sum grade.txt33感謝你的觀看2019年8月28awk數(shù)組n訪問(wèn)數(shù)組元素for ( elem

21、ent in array_name ) print array_nameelement n舉例:awk BEGINprint split(“123#456#789”, mya, “#”); for ( i in mya ) print myai 34感謝你的觀看2019年8月28避免awk錯(cuò)誤的方法 確保整個(gè)awk_script用單引號(hào)括起來(lái) 確保awk_script內(nèi)所有引號(hào)成對(duì)出現(xiàn) 確保用花括號(hào)括起動(dòng)作語(yǔ)句,用圓括號(hào)括起條件語(yǔ)句 可能忘記使用花括號(hào),也許你認(rèn)為沒(méi)有必要,但awk不這樣認(rèn)為,將按之解釋語(yǔ)法 如果使用字符串,一定要保證字符串被雙引號(hào)括起來(lái)(在模式中除外) 35感謝你的觀看201

22、9年8月282) 在awk中,設(shè)置有意義的變量名是一種好習(xí)慣,在進(jìn)行模式匹配或關(guān)系操作時(shí)更容易理解。一般的變量名設(shè)置方式為name=$n3) 通常在BEGIN部分給一些變量賦值是很有益的,這樣可以在awk表達(dá)式進(jìn)行改動(dòng)時(shí)減少很多麻煩4) awk的基本功能是根據(jù)指定規(guī)則抽取輸入數(shù)據(jù)的部分內(nèi)容并輸出,另一個(gè)重要的功能是對(duì)輸入數(shù)據(jù)進(jìn)行分析運(yùn)算得到新的數(shù)據(jù)并輸出,這是通過(guò)在 awk_script中對(duì)字段變量($1、$2、$3.)重新賦值或使用更大的字段變量$n(n大于當(dāng)前記錄的NF)而實(shí)現(xiàn)的5) 使用字符串或正則表達(dá)式時(shí),有時(shí)需要在輸出中加入一新行或查詢一元字符。這時(shí)就需要字符串屏蔽序列。awk中經(jīng)常使用的屏蔽序列有: b 退格鍵 t tab鍵 f 走紙換頁(yè) ddd 八進(jìn)制值 n 新行 r 回車鍵 c 任意其他特殊字符。eg: 為反斜線符號(hào)36感謝你的觀看2019年8月28awk的輸出函數(shù)printf 格式: pr

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論