T3-Linux文件操作指令與過濾器-課件
《T3-Linux文件操作指令與過濾器-課件》由會員分享,可在線閱讀,更多相關(guān)《T3-Linux文件操作指令與過濾器-課件(46頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,*,*,*,單擊此處編輯母版標(biāo)題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,*,*,*,第三課 Linux文件操作指令與過濾器,,學(xué)習(xí)目標(biāo),基本的文件操作指令,1,理解并使用輸入、輸出及重定向,2,,在文件中采用過濾器,3,,,4,Cat命令,,顯示文件連接文件內(nèi)容的工具,,cat 是一個文本文件查看連接工具,,比如:,,[rootlocalhost ~]# cat /etc/fstab,,Cat命令,,cat [選項(xiàng)] [文件]...,,常用選項(xiàng),,-b 對非
2、空輸出行編號,,-E 在每行結(jié)束處顯示 $,,-n 對輸出的所有行編號,,-s 不輸出多行空行,Cat命令實(shí)例,,查看/etc/目錄下的profile文件內(nèi)容;,,[rootlocalhost ~]# cat /etc/profile,,,/etc/目錄下的profile內(nèi)容,并對非空白行編號,行號從1開始,,[rootlocalhost ~]# cat -b /etc/fstab,,/etc目錄中的profile的所有的行(包括空白行)進(jìn)行編號輸出顯示;,,[rootlocalhost ~]# cat -n /etc/profile,,查看/etc/下的profile內(nèi)容,并
3、且在每行的結(jié)尾處附加$符號;,,[rootlocalhost ~]# cat -E /etc/profile,Cat 命令實(shí)例,,cat 加參數(shù)-n 和nl工具差不多,文件內(nèi)容輸出的同時,都會在每行前面加上行號;,,[rootlocalhost ~]# cat -n /etc/profile[rootlocalhost ~]# nl /etc/profile,,cat 可以同時顯示多個文件的內(nèi)容,比如我們可以在一個cat命令上同時顯示兩個文件的內(nèi)容;,,[rootlocalhost ~]# cat /etc/fstab /etc/profile,,cat 對于內(nèi)容極大的文件來說,可以通過管道
4、|傳送到more 工具,然后一頁一頁的查看;,,[rootlocalhost ~]# cat /etc/fstab/etc/profile | more,Cat的創(chuàng)建、連接文件實(shí)例,,cat 有創(chuàng)建文件的功能,創(chuàng)建文件后,要以EOF或STOP結(jié)束;,,1、創(chuàng)建linuxsir.org.txt文件,,[rootlocalhost ~]# cat > linuxsir.org.txt << EOF,,2、為linuxsir.org.txt文件輸入內(nèi)容;,,> BeiJing 2019,,> EOF,,[rootlocalhost ~]# cat linuxsir.org.txt,,BeiJing
5、2019,Cat的創(chuàng)建、連接文件實(shí)例,,cat 還有向已存在的文件追加內(nèi)容的功能。,,[rootlocalhost ~]# cat linuxsir.org.txt,,BeiJing 2019,,[rootlocalhost ~]# cat >> linuxsir.org.txt << EOF,,測試cat向文檔追加內(nèi)容的功能:,> OK?> OK~> EOF,,[rootlocalhost ~]# cat linuxsir.org.txt,,BeiJing 2019,,OK?,,OK~,Cat的創(chuàng)建、連接文件實(shí)例,,cat 連接多個文件的內(nèi)容并且輸出到一個新文件中;,,有sir01.tx
6、t、sir02.tx和sir03.txt,,[rootlocalhost ~]# cat sir01.txt,,123456,,I am testing,,[rootlocalhost ~]# cat sir02.txt,,56789,,BeiNan Tested,,[rootlocalhost ~]# cat sir03.txt,,09876,,linuxsir.org testing,Cat的創(chuàng)建、連接文件實(shí)例,,[rootlocalhost ~]# cat sir01.txt sir02.txt sir03.txt > sir04.txt,,[rootlocalhost ~]# cat
7、 sir04.txt |more,,,Cat的創(chuàng)建、連接文件實(shí)例,,cat 把一個或多個已存在的文件內(nèi)容,追加到一個已存在的文件中,,[rootlocalhost ~]# cat linuxsir.org.txt,,[rootlocalhost ~]# cat linuxsir.org.txt >> sir04.txt,,[rootlocalhost ~]# cat sir04.txt,Cat的創(chuàng)建、連接文件實(shí)例,,,> 意思是創(chuàng)建;,,>> 是追加;,,<< 是結(jié)束;,如何創(chuàng)建一個新文件?,,用touch、echo及cat 工具。,,[rootlocalhost ~]# ls 123456.
8、txt 654321.txt 98765.txt,,[rootlocalhost ~]#,echo,> 123456.txt,,[rootlocalhost ~]#,touch,654321.txt,,[rootlocalhost ~]#,cat,> 98765.txt,,,按ctrl+c組合鍵退出;,,More 命令,,文件內(nèi)容或輸出查看工具,,more 是我們最常用的工具之一,最常用的就是顯示輸出的內(nèi)容,然后根據(jù)窗口的大小進(jìn)行分頁顯示,然后還能提示文件的百分比;,,[rootlocalhost ~]# more /etc/profile,More 命令,,more [參數(shù)選項(xiàng)] [文件],
9、,常用參數(shù)如下:,,+num 從第num行開始顯示;,,-num 定義屏幕大小,為num行;,,+/pattern 從pattern 前兩行開始顯示;,,-c 從頂部清屏然后顯示;,,-d 提示Press space to continue, 'q' to quit.(按空格鍵繼續(xù),按q鍵退出),禁用響鈴功能;,,-l 忽略Ctrl+l (換頁)字符;,,-p 通過清除窗口而不是滾屏來對文件進(jìn)行換頁。和-c參數(shù)有點(diǎn)相似;,,-s 把連續(xù)的多個空行顯示為一行;,,-u 把文件內(nèi)容中的下劃線去掉,,退出more的動作指令是q,,More 命令,,more 的參數(shù)應(yīng)用例子;,,[roo
10、tlocalhost ~]# more -dc /etc/profile,,注:顯示提示,并從終端或控制臺頂部顯示;,,[rootlocalhost ~]# more +4 /etc/profile,,注:從profile的第4行開始顯示;,,[rootlocalhost ~]# more -4 /etc/profile,,注:每屏顯示4行;,,[rootlocalhost ~]# more +/MAIL /etc/profile,,注:從profile中的第一個MAIL單詞的前兩行開始顯示;,More 命令,,more 的動作指令;,,查看一個內(nèi)容較大的文件時,要用到more的動作指令,ct
11、rl+f(或空格鍵) 是向下顯示一屏,ctrl+b是返回上一屏; Enter鍵可以向下滾動顯示n行,需要定義,默認(rèn)為1行;,,幾個常用的如下:,,Enter 向下n行,需要定義,默認(rèn)為1行;,,Ctrl+f 向下滾動一屏;,,空格鍵 向下滾動一屏;,,Ctrl+b 返回上一屏;,,= 輸出當(dāng)前行的行號;,,:f 輸出文件名和當(dāng)前行的行號;,,v 調(diào)用vi編輯器;,,! 命令 調(diào)用Shell,并執(zhí)行命令;,,q 退出more,More 命令,,其它命令通過管道和more結(jié)合的運(yùn)用例子,,我們列一個目錄下的文件,由于內(nèi)容太多,可以用more來分頁顯示。這要
12、和管道 | 結(jié)合起來,,比如:,,[rootlocalhost ~]# ls -l /etc |more,,Less 查看文件內(nèi)容工具,,less 工具也是對文件或其它輸出進(jìn)行分頁顯示的工具;,,是linux正統(tǒng)查看文件內(nèi)容的工具,功能極其強(qiáng)大。,Less 查看文件內(nèi)容工具,,less [參數(shù)] 文件,,常用參數(shù),,-c 從頂部(從上到下)刷新屏幕,并顯示文件內(nèi)容。而不是通過底部滾動完成刷新;,,-f 強(qiáng)制打開文件,二進(jìn)制文件顯示時,不提示警告;,,-i 搜索時忽略大小寫;除非搜索串中包含大寫字母;,,-I 搜索時忽略大小寫,除非搜索串中包含小寫字母;,,-m 顯示讀取文件的百分比;,,-M
13、顯法讀取文件的百分比、行號及總行數(shù);,,-N 在每行前輸出行號;,,-p pattern 搜索pattern;比如在/etc/profile搜索單詞MAIL,就用 less -p MAIL /etc/profile,,-s 把連續(xù)多個空白行作為一個空白行顯示;,,-Q 在終端下不響鈴;,,比如:我們在顯示/etc/profile的內(nèi)容時,讓其顯示行號;,,[rootlocalhost ~]#,less -N,/etc/profile,Less 查看文件內(nèi)容工具,,less的動作命令;,,動作,,回車鍵 向下移動一行;,,y 向上移動一行;,,空格鍵 向下滾動一屏;,,b 向上滾動一屏;,,d
14、向下滾動半屏;,,h less的幫助;,,u 向上滾動半屏;,,w 可以指定顯示哪行開始顯示,是從指定數(shù)字的下一行顯示;比如指定的是6,那就從第7行顯示;,,g 跳到第一行;,,G 跳到最后一行;,,p n% 跳到n%,比如 10%,也就是說比整個文件內(nèi)容的10%處開始顯示;,,/pattern 搜索pattern ,比如 /MAIL表示在文件中搜索MAIL單詞;,,v 調(diào)用vi編輯器;,,q 退出less,Head 命令,,顯示文件內(nèi)容的前幾行,,,head -n 行數(shù)值 文件名;,,顯示/etc/profile的前10行內(nèi)容,應(yīng)該是:,,[rootlocalhost ~]# head -n
15、 10 /etc/profile,,tail 命令,,顯示文件內(nèi)容的最后幾行,,tail 是顯示一個文件內(nèi)容的最后多少行;,,tail -n 行數(shù)值文件名;,,顯示/etc/profile的最后5行內(nèi)容,應(yīng)該是:,,[rootlocalhost ~]# tail -n 5 /etc/profile,,標(biāo)準(zhǔn)文件,,標(biāo)準(zhǔn)輸入文件,,鍵盤稱為,標(biāo)準(zhǔn)輸入文件,,Linux中,所有的打開文件,包括標(biāo)準(zhǔn)文件,都被賦以一個稱為,文件描述符,的數(shù)。文件描述符0被賦給標(biāo)準(zhǔn)輸入文件。,,標(biāo)準(zhǔn)輸出文件,,監(jiān)視器稱為,標(biāo)準(zhǔn)輸出文件,,文件描述符1被賦給標(biāo)準(zhǔn)輸出文件,,文件描述符,,文件描述符是一個整數(shù),它代表一個打開
16、的文件,標(biāo)準(zhǔn)的三個描述符號:,,stdin (標(biāo)準(zhǔn)輸入:一般指鍵盤,),,stdout (標(biāo)準(zhǔn)輸出一般指屏幕輸出),,stderr (錯誤輸出,也是屏幕),,它們分別和3個整數(shù)0,1,2 一一對應(yīng),,>,>>,>&,<&,這幾個符號都代表重定向,如果使用重定向,則文件描述符也不是原來的0,1,2。他們的輸出/輸入/錯誤就被重定向,就不是鍵盤/屏幕。,,重定向符號的意思: 重定向輸出>> 添加輸出2> 錯誤重定向,Cat 重定向的例子,,$ cat config 將會把文件config的內(nèi)容依次顯示到屏幕上。但是,如果cat的命令行中沒有參數(shù),它就會從標(biāo)準(zhǔn)輸入中讀取數(shù)據(jù),并將其送到標(biāo)準(zhǔn)輸出
17、。例如: $ cat Hello world Hello world Bye Bye 用戶輸入的每一行都立刻被cat命令輸出到屏幕上。,輸入重定向,,輸入重定向是指把命令(或可執(zhí)行程序)的標(biāo)準(zhǔn)輸入重定向到指定的文件中。例:,,$ wc /etc/passwd20 23 726 /etc/passwd,,另一種把/etc/passwd文件內(nèi)容傳給wc命令的方法是重定向wc的輸入。,,輸入重定向的一般形式為:命令<文件名。可以用下面的命令把wc命令的輸入重定向?yàn)?etc/passwd文件:,,$ wc < /etc/passwd 20 23 726,輸出重定向,,輸出
18、重定向是指把命令(或可執(zhí)行程序)的標(biāo)準(zhǔn)輸出或標(biāo)準(zhǔn)錯誤輸出重新定向到指定文件中。這樣,該命令的輸出就不顯示在屏幕上,而是寫入到指定文件中。,,輸出重定向的一般形式為:命令>文件名。例如: $ ls > directory.out $ cat directory.out,,如果要將一條命令的輸出結(jié)果追加到指定文件的后面,可以使用追加重定向操作符>>。形式為:命令>>文件名。例如:$ ls *.doc >> directory.out,,錯誤輸出設(shè)備重定向:$ ls /usr/tmp 2> err.file,,將標(biāo)準(zhǔn)輸出和錯誤輸出同時送到同一文件中?! ? $ ls /usr/tmp &> o
19、utput.file,管道,,將一個程序或命令的輸出作為另一個程序或命令的輸入,使用Linux所提供的管道功能。 $ ls /usr/bin | wc -w,,命令替換,,命令替換和重定向有些相似,但區(qū)別在于命令替換是將一個命令的輸出作為另外一個命令的參數(shù)。常用命令格式為:,command1 $(command2) $ cd $(pwd) 該命令將pwd命令列出的目錄作為cd命令的參數(shù),結(jié)果仍然是停留在當(dāng)前目錄下。,,過濾器,,過濾器,是一種程序,它接受來自標(biāo)準(zhǔn)輸入文件的輸入,處理(或過濾)它,再發(fā)送它的輸出到標(biāo)準(zhǔn)輸出文件。,,Grep過濾器,,grep,過濾器尋找特定字符模
20、式的文件,并顯示含有此模式的所有行。被尋找的模式稱為,正則表達(dá)式,:,,grep regular_expression [,文件名,],,Grep過濾器,,常用參數(shù),,-c:只輸出匹配行的計(jì)數(shù)。,,-i:不區(qū)分大小寫(只適用于單字符)。,,-h:查詢多文件時不顯示文件名。,,-l:查詢匹配字符的文件名。,,-L: 查詢不匹配字符的文件名,,-n:顯示匹配行及行號。,,-s:不顯示不存在或無匹配文本的錯誤信息。,,-v:顯示不包含匹配文本的所有行。,Grep過濾器的例子,,Grep 經(jīng)常通過管道命令和其它命令配合使用,如:,,,[rootlocalhost ~]# ls -lh | grep
21、'04-27' | more,,-rw-r--r-- 1 root root 7.9M 04-27 20:35 myfile.img-rw-r--r-- 1 root root 4.0M 04-27 20:37 myfileSpaa-rw-r--r-- 1 root root 3.9M 04-27 20:37 myfileSpab-rw-r--r-- 1 root root 7.9M 04-27 20:38 newmyfile.img-rw-r--r-- 1 root root 100 04-27 16:14 xaa,正則表達(dá)示,,(1)正則表達(dá)式是一個小型的編程語言,,(2)最初它是
22、在UNIX環(huán)境中開發(fā)的,與Perl一起使用得比較多。Linux中也有同樣的功能。,,(3)正則表達(dá)式語言是一種專門用于字符串處理的語言,比如我們在網(wǎng)頁上用于驗(yàn)證郵件和電話號碼的處理。,符,,號,含,,義,示,,例,匹配的示例,^,輸入文本的開頭,^B,B,,但只能是文本中的第一個字符,,$,輸入文本的結(jié)尾,X$,X,,,,但只能是文本中的最后一個字符,.,除了換行字符,(\n),以外的所有單個字符,i.ation,isation,、,ization,正則表達(dá)示,,正則表達(dá)示例子,,[rootlocalhost root]# ls -lh | grep d,,drwxr-xr-x 2 root
23、 root 4.0K Dec 25 10:42 aaa,,-rw-r--r-- 1 root root 1.2K Oct 25 10:05 anaconda-ks.cfg,,[rootlocalhost root]# ls -lh | grep ^d,,drwxr-xr-x 2 root root 4.0K Dec 25 10:42 aaa,,增加^代表開頭的意思,,[rootlocalhost root]# ls -lh|grep ^.........x,,drwxr-xr-x 2 root root 4.0K Dec 25 10:42 a
24、aa,,.代表單個字符的匹配,,[rootlocalhost root]# ls -lh |grep g$,,-rw-r--r-- 1 root root 1.2K Oct 25 10:05 anaconda-ks.cfg,,-rw-r--r-- 1 root root 2.9K Nov 19 17:06 install.log,,-rw-r--r-- 1 root root 2.9K Oct 25 10:03 install.log.syslog,,$代表以什么字符結(jié)尾,Grep命令例子,,已在Diaz
25、 電信注冊的不同客戶的材料存儲在,Customers,文件中。該文件的示例數(shù)據(jù)如下:,,"000001","Angela","Smith","16223 Radiance Court","Kansas City","Kansas",,"000002","Barbara","Johnson","227 Beach Ave.","Alexandria","Virginia",,"000003","Betty","Williams","1 Tread Road","Dublin","Georgia",,Grep命令例子,,寫一個尋找住在Kansas 州的人的個數(shù)的命令?,,寫一個命令,顯示客戶Lin
26、da的完整的材料及出現(xiàn)該材料的行號?,,wc 過濾器,,功能說明:,wc命令的功能為統(tǒng)計(jì)指定文件中的字節(jié)數(shù)、字?jǐn)?shù)、行數(shù), 并將統(tǒng)計(jì)結(jié)果顯示輸出。,,語法:,wc?[-clw][--help][--version][文件...],,常用參數(shù):,-c??? 統(tǒng)計(jì)字節(jié)數(shù)。??-l ??? 統(tǒng)計(jì)行數(shù)。??-w ??統(tǒng)計(jì)字?jǐn)?shù)。,,輸出列的順序和數(shù)目不受選項(xiàng)的順序和數(shù)目的影響??偸前聪率鲰樞蝻@示并且每項(xiàng)最多一列。,,行數(shù)、字?jǐn)?shù)、字節(jié)數(shù)、文件名,,省略任選項(xiàng)-lcw,wc命令的執(zhí)行結(jié)果與上面一樣。,,cut 過濾器,,用法:,cut -c num1-num2 filename,,說明:,顯示每行從開頭算
27、起 num1 到 num2 的文字。,,范例:,,[rootlocalhost root]# cat example??????? test2??????? this is test1???[rootlocalhost root]# cut -c0-6 example?? #顯示開頭算起前 6 個字符??????? test2??????? this i,,cut -d: -f 1 customers.txt,,-d用來定義分隔符,默認(rèn)為tab鍵,,,-f 表示需要取得哪個字段,tr 過濾器,,功能說明:,轉(zhuǎn)換字符tr(translate?character)。,,語法:,tr?[-
28、cdst] [第一字符集][第二字符集],,說明:,tr指令從標(biāo)準(zhǔn)輸入設(shè)備讀取數(shù)據(jù),經(jīng)過字符串轉(zhuǎn)譯后,輸出到標(biāo)準(zhǔn)輸出設(shè)備。,,參數(shù):,-c???取代所有不屬于第一字符集的字符。??-d ??刪除所有屬于第一字符集的字符。??-s???把連續(xù)重復(fù)的字符以單獨(dú)一個字符表示。??-t??? 先刪除第一字符集較第二字符集多出的字符。,,,tr 過濾器范例,,[studentsz1 student]$ tr 'a' 'c‘,,abc,,cbc,,aaa,,ccc,,[studentsz1 student]$ tr 'am' ‘AM' < sir01.txt,,123456,,I AM testin
29、g,,tr 過濾器范例,,此文件中,字段定界符是 ‘,’,,不同的字段是,CustomerCode, FirstName, LastName, Address, City, 及 State。,,寫出一個命令,只顯示生活在,Georgia,的客戶的,FirstName,和,LastName。,,小結(jié),,本課中,我們學(xué)習(xí)了:,,使用文件描述符以及重定向符號,>,和,<,你可,重定向關(guān)于非標(biāo)準(zhǔn)文件的文件的輸入、輸出、及錯誤,,用,>>符號可把命令的輸出和錯誤添加到另一個文件,,grep,過濾器尋找關(guān)于字符特定模式的標(biāo)準(zhǔn)輸入或文件,并顯示包含此模式的所有行,,wc,過濾器對磁盤文件中或標(biāo)準(zhǔn)輸入上的行、單詞、字符的個數(shù)計(jì)數(shù),,當(dāng)來自某個命令(或文件)的輸出的特定列需要抽取時,使用,cut,過濾器,,用,tr,過濾器把字符的一種集合翻譯到另一種,課后練習(xí),,練習(xí)文件查看指令,,練習(xí)文件過濾器,理解正則表達(dá)式,,,,
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 市教育局冬季運(yùn)動會安全工作預(yù)案
- 2024年秋季《思想道德與法治》大作業(yè)及答案3套試卷
- 2024年教師年度考核表個人工作總結(jié)(可編輯)
- 2024年xx村兩委涉案資金退還保證書
- 2024年憲法宣傳周活動總結(jié)+在機(jī)關(guān)“弘揚(yáng)憲法精神推動發(fā)改工作高質(zhì)量發(fā)展”專題宣講報(bào)告會上的講話
- 2024年XX村合作社年報(bào)總結(jié)
- 2024-2025年秋季第一學(xué)期初中歷史上冊教研組工作總結(jié)
- 2024年小學(xué)高級教師年終工作總結(jié)匯報(bào)
- 2024-2025年秋季第一學(xué)期初中物理上冊教研組工作總結(jié)
- 2024年xx鎮(zhèn)交通年度總結(jié)
- 2024-2025年秋季第一學(xué)期小學(xué)語文教師工作總結(jié)
- 2024年XX村陳規(guī)陋習(xí)整治報(bào)告
- 2025年學(xué)校元旦迎新盛典活動策劃方案
- 2024年學(xué)校周邊安全隱患自查報(bào)告
- 2024年XX鎮(zhèn)農(nóng)村規(guī)劃管控述職報(bào)告