Linux命令學習第二篇-文件管理_第1頁
Linux命令學習第二篇-文件管理_第2頁
Linux命令學習第二篇-文件管理_第3頁
Linux命令學習第二篇-文件管理_第4頁
Linux命令學習第二篇-文件管理_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第二篇《文件管理與編輯命令》2.1 mkdir命令1.功能說明mkdir命令用于創(chuàng)建一個目錄。mkdir是makedirectory的縮寫。其格式如下:mkdir[選項]目錄名mkdir命令的選項及其說明如表所示。mkdir命令的選項及其說明交互命令 含義-m 對新建目錄設置存取權限可以指定一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選-p 項后,系統(tǒng)將自動建立好那些尚不存在的目錄,也就是一次可以建立多個目錄2.舉例在/home下創(chuàng)建user1目錄,同時在user1下創(chuàng)建user2目錄,也就是連續(xù)創(chuàng)建兩個目錄。[root@mylinux~]#mkdir–p/home/user1/user2這樣就在/home目錄下創(chuàng)建了嵌套目錄user1/user2。2.2 more命令1.功能說明如果一個文本文件比較長,一屏無法顯示完畢,就需要使用more命令。more命令讀取文本文件時,每次一屏顯示,并且在每屏后暫停,同時在屏幕底部顯示單詞?More?。如果此時按?Enter?鍵,more命令就會接著再顯示文本的一行,依此類推;如果按空格鍵,more命令就繼續(xù)顯示文本文件的另一屏信息。其格式如下:more[選項]文件名more命令的選項及其說明如表所示。more命令的選項及其說明交互命令 含義-d 在屏幕底部more提示符后顯示友好信息,此信息是有關使用哪些鍵繼續(xù),哪些鍵退出,哪些鍵提供more命令幫助的-s 將輸出文件中的多個空行減少為只有一個空行輸出。以文件的第1行為準-p 先清除顯示屏以前信息,再顯示文本信息-c 顯示文件時,每屏顯示都清除先前的屏幕信息,然后從最頂端顯示出來2.舉例(1)用分頁的方式顯示Makefile文件的內(nèi)容,使用以下命令:[root@mylinux~]#moreMakefile(2)顯示文件Makefile的內(nèi)容,每10行顯示一屏,同時清除屏幕,使用以下命令:[root@mylinux~]#more–c-10Makefile2.3 cat命令1.功能說明cat命令用來將文件的內(nèi)容打印到標準輸出,類似于DOS下的type命令,同時cat還可以用于連接合并文件。其格式如下:cat[選項]文件名或者:cat文件1文件2>文件3cat命令的選項及其說明如表所示。cat命令的選項及其說明選項 含義-A 將文件中的Tab輸出顯示為?^I?,同時在每行的末尾顯示一個$符號-b 將文件中的所有非空行按順序編號,編號從1開始2.舉例(1)查看Kconfig文件的內(nèi)容,同時將文件中Tab的輸出顯示為?^I,?并對非空行進行編號輸出,可以使用以下命令:[root@mylinux~]#cat–AbKconfig(2)將文件file1.txt和file1.txt的內(nèi)容合并后輸出到文件file3.txt。[root@WEBServerbase]#lsfile1.txtfile2.txt[root@WEBServerbase]#catfile1.txtThisisfile1.txt[root@WEBServerbase]#catfile2.txtThisisfile2.txt[root@WEBServerbase]#catfile1.txtfile2.txt>file3.txt[root@WEBServerbase]#morefile3.txtThisisfile1.txtThisisfile2.txt[root@WEBServerbase]#lsfile1.txtfile2.txtfile3.txt2.4 diff命令1.功能說明diff命令用來比較文件的差異。diff以逐行的方式比較文本文件的異同,如果指定比較的是目錄,則diff會比較目錄中相同文件名的文件,但不會比較其中的子目錄。其格式如下:diff[選項]文件1文件2diff命令的選項及其說明如表所示。diff命令的選項及其說明選項 含義-c 顯示全部內(nèi)容,并標出不同之處-b 忽略行尾的空格,同時字符串中的一個或多個空格都將視為相同-r 當文件1和文件2為目錄時,會比較子目錄中的文件-s 當兩個文件相同時,顯示文件相同信息2.輸出格式通常輸出信息由如下格式組成:n1an3,n4n1,n2dn3n1,n2cn3,n4其中字母a、d、c之前的n1和n2代表文件1的行號,字母a、d、c之后的n3和n4代表文件2的行號,字母a、d、c分別表示附加、刪除和修改操作。在上面輸出形式的每行后緊跟著兩個文件不同的若干行,其中以?<?打頭的行屬于文件 1,以?>?打頭的行屬于文件2。3.舉例比較文件file1.txt和文件file2.txt的異同,同時將/home/admin/file3.txt文件和當前目錄下的file2.txt文件進行比較。[root@WEBServeropt]#lsfile1.txtfile2.txt[root@WEBServeropt]#catfile1.txtThisisfile1.txt[root@WEBServeropt]#catfile2.txtThisisfile2.txt[root@WEBServeropt]#cat/home/admin/file3.txtThisisfile3.txt[root@WEBServeropt]#difffile1.txtfile2.txt1c1<Thisisfile1.txt--->Thisisfile2.txt[root@WEBServeropt]#diff/home/admin/file3.txt file2.txt1c1<Thisisfile3.txt--->Thisisfile2.txt[root@WEBServeropt]#diff-c/home/admin/file3.txt file2.txt***/home/admin/file3.txt***file2.txt---1---!Thisisfile3.txt

2021-07-2014:15:48.000000000+08002021-07-2014:14:21.000000000+0800---1----!Thisisfile2.txt2.5 grep命令1.功能說明grep命令是Linux下的文本過濾工具,grep根據(jù)指定的字符串,對文件的每一行進行搜索,如果找到了這個字符串,就輸出該行的內(nèi)容。其格式如下:grep[選項]需要查找的字符串文件名grep命令的選項有很多,這里列出最常使用的選項說明,如表所示。grep命令的選項及其說明選項 含義-ANUM 除了列出符合條件的行外,同時列出每個符合條件行的后NUM行-c 只顯示符合條件的行數(shù),而不顯示每行的具體信息-ffile 事先將要搜索的樣式寫入到一個文件中,每行一個樣式,然后以這個文件作為條件進行搜索-i 搜索時忽略大小寫-n 在顯示的搜索結果上顯示行號-B 與選項?-A?相反,除了列出符合條件的行外,同時列出每個符合條件行的前NUM行2.舉例(1)列出install.log文件中含有RPM字符串的行。[root@WEBServer~]#grepRPMinstall.logInstallingRPM(2)列出install.log文件中含有rpm字符串的行,忽略大小寫,并標識出每行的具體行號。[root@WEBServer~]#grep-nirpminstall.log386:Installingrpm-4.4.2-47.el5.x86_64412:Installingrpm-libs-4.4.2-47.el5.x86_64413:Installingrpm-python-4.4.2-47.el5.x86_64580:Installingrpm-libs-4.4.2-47.el5.i386792:Installingredhat-rpm-config-8.0.45-22.el5.noarch1191:Installingrpm-devel-4.4.2-47.el5.x86_641192:Installingrpm-build-4.4.2-47.el5.x86_641194:Installingrpm-devel-4.4.2-47.el5.i3861337:InstallingRPM2.6 rm命令功能說明rm命令用來刪除某個目錄及其下的所有文件及子目錄。對于鏈接文件,只是斷開了鏈接,原文件保持不變。其格式如下:rm[選項]文件或者目錄rm命令的選項及其說明如表所示。rm命令的選項及其說明選項 含義-r 告訴rm將選項中列出的全部目錄以及子目錄還有文件均遞歸地刪除,如果在選項中不指定?-r?選項,? rm?命令將不能刪除目錄-f 忽略不存在的問題,也不給出提示-i 交互式刪除,即在刪除前進行確認注意:使用rm命令要特別小心,?rm–rf?組合要甚用,因為一旦文件被刪除,就不能被恢復。Linux沒有類似于Windows的回收站。因此,為了防止文件或者目錄被誤刪除,可以使用rm的?-i選?項,來逐個確認要刪除的文件。使用? -i選?項時,如果用戶輸入? y,?文件將被刪除;如果輸入其他任何信息,文件則不被刪除。2.7 touch命令1.功能說明touch命令用來改變指定文件的訪問時間和修改時間,若指定文件不存在則創(chuàng)建此文件。如果沒有指定時間,則使用當前時間。其格式如下:touch[選項]設定的時間文件touch命令的選項及其說明如表所示。touch命令的選項及其說明選項 含義-a-m-c-d或者-t-r<參考文件或目錄>

改變文件的訪問時間為系統(tǒng)當前時間,無需設置時間選項改變文件的修改時間為系統(tǒng)當前時間,無需設置時間選項如果文件不存在,不創(chuàng)建也不提示使用指定的日期時間把指定文件或目錄的日期時間都設成和參考文件或目錄的日期時間相同2.舉例下面是touch命令的一個操作實例,?#?號后面的內(nèi)容為命令注釋。[root@mylinux~]#touchtest.txt#創(chuàng)建一個文件test.txt[root@mylinux~]#ls-l#顯示文件創(chuàng)建時間(修改時間)total0-rw-r--r--1rootroot0Jul1806:44test.txt[root@mylinux~]#ls–lu#顯示文件的訪問時間total0-rw-r--r--1rootroot0Jul1806:44test.txt[root@mylinux~]#date #顯示系統(tǒng)當前時間FriJul1806:45:21CST2021[root@mylinux~]#touch-atest.txt#改變文件的訪問時間為系統(tǒng)當前時間[root@mylinux~]#ls-lutotal0-rw-r--r--1rootroot0Jul1806:45test.txt[root@mylinux~]#ls-ltotal0-rw-r--r--1rootroot0Jul1806:44test.txt[root@mylinux~]#touch-mtest.txt#改變文件的修改時間為系統(tǒng)當前時間[root@mylinux~]#ls-ltotal0-rw-r--r--1rootroot0Jul1806:46test.txt[root@mylinux~]#touchlinux.txt[root@mylinux~]#ls-ltotal0-rw-r--r---rw-r--r--

1rootroot0Jul1806:47linux.txt1rootroot0Jul1806:46test.txt[root@mylinux~]#ls-lutotal0-rw-r--r---rw-r--r--

1rootroot0Jul1806:47linux.txt1rootroot0Jul1806:45test.txt[root@mylinux~]#touch-a-rlinux.txttest.txt#將test.txt文件的訪問時間修改為linux.txt文件的訪問時間[root@mylinux~]#ls-lutotal0-rw-r--r---rw-r--r--

1rootroot0Jul1806:47linux.txt1rootroot0Jul1806:47test.txt[root@mylinux~]#touch-d"2021071806:40"linux.txt#將linux.txt文件的修改時間設定為2021年7月18日6點40分[root@mylinux~]#ls-ltotal0-rw-r--r---rw-r--r--

1rootroot0Jul1806:40linux.txt1rootroot0Jul1806:46test.txt2.8 ln命令1.功能說明ln命令用來在文件或目錄之間創(chuàng)建鏈接。Linux下的鏈接有兩種,一種是硬鏈接(HardLink),一種是符號鏈接(SymbolicLink),默認情況下ln命令產(chǎn)生的是硬鏈接。硬鏈接:是指通過文件的索引節(jié)點來進行鏈接。在Linux的文件系統(tǒng)中,保存在磁盤的所有類型的文件都會分配一個編號,這個編號稱為索引節(jié)點號(InodeIndex)。多個文件指向同一個索引節(jié)點在Linux系統(tǒng)中是允許的,這就是所謂的硬鏈接。硬鏈接的作用是允許一個文件擁有多個有效的路徑名,這樣用戶就可以對一些重要文件建立硬鏈接,以防止誤刪除操作。因為對應該文件的索引節(jié)點有一個以上的鏈接,只刪除一個鏈接并不影像索引節(jié)點本身和其他鏈接,只有當最后一個鏈接被刪除后,文件的數(shù)據(jù)塊及目錄的鏈接才會釋放,也就是說,此時文件才會被真正刪除。符號鏈接:也叫軟鏈接,軟鏈接類似于Windows中的快捷方式,因此軟鏈接是一個指向真正的文件或者目錄位置的符號連接。ln命令的格式如下:ln[選項]源文件目標鏈接名ln命令的選項及其說明如表所示。ln命令的選項及其說明選項 含義-f 如果在目標位置存在與鏈接名相同的文件,這個文件將被刪除-s 進行軟鏈接(SymbolicLink)-d 允許系統(tǒng)管理者硬鏈接自己的目錄-b 對將在鏈接時會被覆蓋或者刪除的文件進行備份2.舉例(1)將/etc/inittab文件進行硬鏈接到/opt/backup目錄下,此時/opt/backup下就生成了一個inittab文件??梢钥吹?,兩個文件沒有任何不同。[root@mylinux~]#ln/etc/inittab/opt/backup[root@mylinux~]#ll/opt/backup/inittabtotal8-rw-r--r--2rootroot1666Jul1911:17/opt/backup/inittab[root@mylinux~]#ll/etc/inittab-rw-r--r--2rootroot1666Jul1911:17/etc/inittab(2)在當前目錄下有兩個文件mylinux1.txt和mylinux.txt,現(xiàn)在將mylinux1.txt硬鏈接到當前目錄下,鏈接名為mylinux.txt。當前目錄下存在相同的文件名mylinux.txt,如果我們使用ln的?-f?選項,就會刪除 mylinux.txt文件。因此這里我們使用?-b?選項先備份mylinux.txt文件,然后再做mylinux1.txt的硬鏈接到mylinux.txt。下面的mylinux.txt~文件就是?-b?選項備份產(chǎn)生的文件。[root@mylinuxoracle]#lsmylinux1.txtmylinux.txt[root@mylinuxoracle]#moremylinux.txtThisismylinux![root@mylinuxoracle]#moremylinux1.txtThisismylinux1![root@mylinuxoracle]#ln-bmylinux1.txtmylinux.txt[root@mylinuxoracle]#lsmylinux1.txtmylinux.txtmylinux.txt~[root@mylinuxoracle]#moremylinux.txtThisismylinux1![root@mylinuxoracle]#moremylinux.txt~Thisismylinux!(3)將/etc/inittab文件符號鏈接到/opt下。[root@mylinux~]#ln-s/etc/inittab/opt[root@mylinux~]#ll/opt/inittabtotal4lrwxrwxrwx1rootroot12Jul2017:57/opt/inittab->/etc/inittab2.9 file命令1.功能說明file命令用來顯示文件的類型。對于長度為0的文件,將識別為空文件;對于符號連接文件,缺省情況下將顯示符號連接引用的真實文件路徑。其格式如下:file[選項]文件名file命令的選項及其說明如表所示。file命令的選項及其說明選項 含義-b 顯示文件類型結果,不顯示對應文件名稱-L 直接顯示符號鏈接所指向文件的類型-z 顯示壓縮文件的信息-i 如果文件不是常規(guī)文件,則不進一步對文件類型進行分類2.舉例(1)顯示/etc/init.d/halt文件的類型,顯示結果為shell可執(zhí)行文件。[root@WEBServerbin]#file/etc/init.d/halt/etc/init.d/halt:Bourne-Againshellscripttextexecutable(2)顯示/bin/sh文件類型,顯示結果為符號鏈接文件。[root@WEBServerbin]#file/bin/sh/bin/sh:symboliclinkto`bash'(3)顯示/opt/file1.txt文件類型,顯示結果為ASCII文本文件。[root@WEBServeropt]#filefile1.txtfile1.txt:ASCIItext(4)顯示/dev/had文件類型,顯示結果為塊設備文件。[root@WEBServercicro]#file/dev/hda/dev/hda:blockspecial(3/0)2.10 cp命令1.功能說明cp命令用來將給出的文件或者目錄拷貝到另一個文件或者目錄中。cp與Windows下的copy命令類似,但是cp命令更加強大。其格式如下:cp[選項]源文件或目錄目標文件或目錄cp命令的選項及其說明如表所示。cp命令的選項及其說明選項 含義在拷貝目錄時使用。它保留所有的信息,包含文件鏈接、文件屬性,并-a遞歸地拷貝目錄若給出的源文件是一目錄文件,此時cp將遞歸復制該目錄下所有的子-r目錄和文件。此時目標文件必須為一個目錄名-d 拷貝時保留鏈接,這樣不會失去鏈接文件-p 保留文件的修改時間和存取權限-i 如果已經(jīng)有相同文件名的目標文件,則提示用戶是否覆蓋2.舉例(1)將當前目錄下的所有文件復制到/tmp目錄下,?./*表?示當前目錄下所有文件和目錄。[root@mylinux~]#cp–r./*/tmp(2)將/home/oracle目錄及其子目錄下的全部內(nèi)容拷貝到/home/ixdba下。[root@mylinux~]#cp–r/home/oracle/home/ixdba2.11 find命令1.功能說明find命令用來在指定的路徑下查找指定的文件。其格式如下:findpath-name[-options][-print–exec-ok命令{}\;]具體的選項說明如下。path-name:find命令查找的目錄路徑,例如可以用?.?表示當前目錄,用? /?表示系統(tǒng)根目錄。-options:find命令的這個選項主要用來控制搜索的方式。這里列出?-options?選項常見的幾種格式,如表所示。常見的格式格式 含義-name'字串'-lname'字串'-gidn-uidn-empty-path‘字串’-group‘字串’-depth

查找文件名匹配所給字串的所有文件,字串內(nèi)可用通配符*、?、[]查找文件名匹配所給字串的所有符號鏈接文件,字串內(nèi)可用通配符*、?、[]查找屬于ID號為n的用戶組的所有文件查找屬于ID號為n的用戶的所有文件查找大小為0的目錄或文件查找路徑名匹配所給字串的所有文件,字串內(nèi)可用通配符*、?、[]查找屬于用戶組名為所給字串的所有的文件在查找文件時,首先查找當前目錄下的文件,然后再查找其子目錄下的文件-prune目錄-sizen-user‘字串’

指出搜索時不搜索該目錄。如果同時使用-depth選項,那么-prune將被find命令忽略查找文件長度為n塊的文件,帶有c時表示文件長度以字節(jié)計查找屬于用戶名為所給字串的所有的文件-mtime+n或-n 按時間搜索,+n表示n天之前的,-n表示今天到n天前之間的按指定文件類型搜索。文件類型包括b(塊設備文件)、c(字符設備文-type文件類型 件)、f(普通文件)、l(符號連接)、d(目錄)、p(管道)、s(socket文件。-print:將搜索結果輸出到標準輸出。-exec:對搜索出符合條件的文件執(zhí)行所給出的Linux命令,而不詢問用戶是否需要執(zhí)行該命令。{}表示shell命令的選項即為所查找到的文件。命令的末尾必須以?;?結束。注意:格式要正確,?-exec命令{}\;,?在}和\之間一定要有空格才行。-ok:對搜索出符合條件的文件執(zhí)行所給出的Linux命令。與-exec不同的是,它會詢問用戶是否需要執(zhí)行該命令。2.舉例(1)在系統(tǒng)根目錄下,查找文件類型為普通文件,屬于ixdba用戶的,2天以前的,并且查找時不包含/usr/bin目錄的文件名為main.c的文件,并將結果輸出到屏幕。[root@mylinux~]#find/-path"/usr/bin"-prune-o-name"main.c"-userixdba-typef-mtime+2-print(2)對上例中搜索的結果進行刪除操作。[root@mylinux~]#find/-path"/usr/bin"-prune-o-name"main.c"-userixdba-typef-mtime+2–print–execrm{}\;(3)在系統(tǒng)根目錄下查找不在/var/log和/usr/bin目錄下的所有普通文件。[root@mylinux~]#find/\(-path/var/log–o–path/usr/bin\)–prune–o–name?main.c?–print\表示引用,告訴shell不對后面的字符做特殊解釋,而留給find命令去解釋其意義。注意:?\(-path?中,在? (?和? -path?之間是有空格的,同時?/usr/bin\)?在? bin?和?\?之間也是有空格的。(4)查找系統(tǒng)中所有大小為0的普通文件,并列出它們的完整路徑。[root@mylinux~]#find/-typef–size0–execls–al{}\;(5)查找系統(tǒng)/var/logs目錄中修改時間在7天以前的普通文件,然后以交互方式刪除。[root@mylinux~]#find/var/log–typef–mtime+7–okrm{}\;<rm.../var/log/spooler.1>?y<rm.../var/log/spooler.3>?y<rm.../var/log/boot.log.2>?y<rm.../var/log/spooler.4>?y<rm.../var/log/Xorg.0.log.old>?y<rm.../var/log/Xorg.0.log>?y<rm.../var/log/secure.4>?y(6)在當前目錄及子目錄下查找所有?*.txt?的文件。[root@mylinux~]#find.–name?*.txt?–print(7)在用戶自己的根目錄下查找文件名以一個大寫字母開頭,緊接著是一個小寫字母和兩個數(shù)字,最后以?.txt?結尾的文件。[root@mylinux~]$find~-name?[A-Z][a-z][0--9][0--9]*.txt?-print(8)在/etc目錄下查找文件屬主為ixdba用戶的文件。[root@mylinux~]#find/etc–userixdba-print2.12 split命令1.功能說明split命令用來分割文檔,將一個文件分成數(shù)個。其格式如下:split[選項][input_file][output_file]split命令的選項及其說明如表所示。split命令的選項及其說明選項 含義指定分割出來的文件大小,size可加入單位,b代表512bytes,k代表-bsize1KB,m代表1MB。-n 這里?n?指定分割的每個文件的長度,缺省為1000行-d 將split命令生成的文件序列以數(shù)字形式命名-a 指定split命令生成

溫馨提示

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

最新文檔

評論

0/150

提交評論