《Linux系統基礎與應用實踐》課件第3章 Linux操作系統常用命令_第1頁
《Linux系統基礎與應用實踐》課件第3章 Linux操作系統常用命令_第2頁
《Linux系統基礎與應用實踐》課件第3章 Linux操作系統常用命令_第3頁
《Linux系統基礎與應用實踐》課件第3章 Linux操作系統常用命令_第4頁
《Linux系統基礎與應用實踐》課件第3章 Linux操作系統常用命令_第5頁
已閱讀5頁,還剩52頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

Linux操作系統常用命令02榆林職業技術學院楊浩Linux系統基礎與應用實踐1學習目標1.理解Linux文件系統中文件的基本概念、用戶類型以及用戶對文件的操作權限。2.熟練掌握ls、mkdir、cp、rmdir、pwd、rm、mv等文件基本操作命令以及cat、more、less、head、tail等文件查看命令的使用方法。3.熟練掌握鏈接文件創建命令ln的使用方法,區分硬鏈接文件與軟鏈接文件的異同。4.熟練掌握用戶權限修改命令chmod的使用方法,理解用戶權限對于文件和目錄的不同含義;掌握文件所有者修改命令chown、文件所屬組修改命令chgrp以及文件默認權限設置命令umask的基本使用方法。5.熟練掌握文件搜索命令find、快速文件搜索命令locate、命令所在目錄查找命令which和whereis以及文件內容搜索名grep等命令的基本使用方法;掌握常用幫助命令man、whatis、apropos、help、info的基本使用方法;熟練掌握useradd、passwd用戶管理命令和登錄用戶信息查看命令的使用方法。6.熟練掌握gzip、gunzip、tar、zip、unzip、bzip2、bunzip2壓縮解壓縮命令的使用方法,區分各命令之間的異同。7.熟練掌握write、wall、ping、ifconfig、mail、last、lastlog、traceroute、netstat、setup等網絡配置、狀態查看、信息傳輸等命令的使用方法;熟練掌握shutdown、halt、poweroff、init、reboot等關機和重啟命令的使用方法。本章學習目標23.1文件處理命令1.Linux文件3.1.1相關概念301

Linux文件系統中所有的對象都被視為文件02

Linux主要文件類型包括普通文件、目錄文件、塊設備文件、鏈接文件、套接字文件和管道文件等六種03

Linux文件沒有擴展名,Linux也根據文件擴展名來判斷文件類型,我們在為文件命名的時候給予它特定的后綴,是為了方便用戶管理(如一般認為以“.sh”為后綴的文件是shell腳本文件,以“.tar.gz”為后綴的文件是壓縮文件)。04在Linux文件系統中,文件名以“.”開頭的文件是隱藏文件,在實際操作時,要顯示隱藏文件的信息,需要使用特定的命令選項。3.1文件處理命令2.基于文件的用戶類型3.1.1相關概念4所有者(ower)

通常文件的創建者就是文件的所有者,當然文件的所有者可以被改變,就像產權過戶一樣。1所屬組(group)

為了方便管理,如果給一個用戶群體賦予一定的對特定文件的操作權限,所有加入這個群體的用戶就會自動具有該群體所具有的權限,這個群體就是文件的所屬組2其他人(other)

除所有者和所屬組之外的所有其他用戶都屬于其他人,所有的其他人對該文件具有相同的操作權限。3Linux用戶類型3.1文件處理命令3.基于文件的用戶權限3.1.1相關概念5讀(read)寫(write)執行(execute)Linux文件系統中,對于每一個文件都有讀(read)、寫(write)和執行(execute)三種權限,文件創建時,系統為文件的三類用戶授予默認的讀寫執行(rwx)權限,文件的所有者可以改變所有用戶對文件的讀寫執行權限?;谖募挠脩魴嘞?.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令6

1)文件查看命令lsls命令(list)所在路徑為/bin,所有用戶都可以執行該改命令,其功能是顯示指定目錄下的文件信息,缺省為當前目錄。

命令格式:[root@localhostemp]#ls[選項][參數]

參數說明:

命令格式中的參數可以是目錄,也可以是文件,如果是目錄,則顯示指定目錄中的文件信息,如果是文件,則顯示指定文件本身的信息,默認顯示當前目錄的相應信息(顯示信息由選項確定)。

需要注意的是:命令與選項之間要用空格分開,選項前加符號“-”,多個選項可以組合使用,且沒有先后順序,選項也可以跟在參數之后,但必須用空格隔開。

選項說明:-a顯示所有(all)文件,包括隱藏文件-l顯示文件的詳細信息,即按長(long)格式顯示-d查看指定目錄本身的信息,而不是目錄下的文件信息,通常與-l配合使用-h以適當的單位顯示文件大小,與-l選項配合使用-k以KB為文件大小單位,與-l選項配合使用-I顯示文件的Inode號,每個文件都有一個唯一的Inode號,唯一表示這個文件3.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令7

1)文件查看命令

ls

例3.1可用如下命令顯示當前目錄下文件的詳細信息:[root@localhosttemp]#ls–l

執行結果:total68-rw-r--r--.1rootroot378Apr3016:02backupinfo.txt.tar.gz-rwxr-xr-x.1rootroot514Apr3011:44backup_studentinfo.shdrwxr-xr-x.2rootroot4096Apr3011:20bkp_student

第一段(-rw-r--r--)共占了十位,第一位表示文件類型:如“-”表示普通文件,“d”表示目錄(directory)文件,“l”表示軟連接(link)文件,“b”表示塊設備(block)文件,“c”表示字符(character)設備文件。第二位到第四位表示所有者對文件的讀寫權限,依次為讀(r)、寫(w)、執行(x)權限,如果某位為“-”,則表示沒有對應的權限,在該例中所有者對該文件的操作權限為“rw-”,說明所有者對該文件有讀寫權限,但沒有執行權限;第五位到第七位為所屬組對文件的操作權限,該例中所屬組的對該文件的操作權限為“r--”,即可讀,但不能寫,也不能執行。第八位到第十位為其它用戶對該文件的操作權限,該例中其它用戶對該文件的操作權限為“r--”,即可讀,但不能寫,也不能執行。

第二段,如果是普通文件,則表示該文件的硬鏈接文件數(如該數值為1,則表示沒有被創建硬鏈接文件,只有其本身),如果是目錄文件,則表示該目錄下的一級子目錄數(其中,包含當前目錄“.”和父目錄“..”);第三段(如:root)是文件的所有者;第四段(如:root)是文件的所屬組;第五段是文件的大小,默認單位是字節;第六段是文件的最后一次修改時間;第七段是文件名。3.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令8

1)文件查看命令

ls

例3.2可用如下命令顯示/etc目錄下文件的詳細信息,同時顯示Inode號,并用適當的單位作為文件大小單位:[root@localhosttemp]#ls-lhi/etc

執行結果:total1.2M654428-rw-r--r--.1rootroot44Apr2615:48adjtime654098-rw-r--r--.1rootroot1.5KJan122010aliases655051-rw-r--r--.1rootroot12KApr2613:38aliases.db……本例中,第一列為文件的Inode號。

小知識:在Linux內部,使用Inode號來識別文件,而不是使用文件名。通常Inode與文件名是一一對應的,但是也存在在一個Inode號對應多個文件名的情況,如一個文件和其對應的硬鏈接文件具有相同的Inode號。3.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令9

1)文件查看命令

ls

例3.3可用如下命令顯示/etc目錄的詳細信息(顯示指定目錄的詳細信息):[root@localhosttemp]#ls-ldih/etc

執行結果:654081drwxr-xr-x.59rootroot4.0KApr3019:15/etc本例中,參數“-d”表示顯示指定目錄的詳細信息。本例中,參數“-d”表示顯示指定目錄的詳細信息。

小知識:Linux中隱藏文件以“.”開頭,默認情況下不顯示隱藏文件,如果要查看隱藏文件就用“-a”選項,如命令ls–a,顯示當前目錄下的所有文件(包括隱藏文件)。3.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令10

2)新建文件命令touch

touch命令所在完整路徑為/bin,所有用戶都可以使用,其功能是創建一個或多個新文件。

命令格式:[root@localhosttemp]#touch參數

參數說明:

參數指定要創建的文件名或文件名列表(可以同時創建多個文件,文件名之間用空格分割)。

例3.4可用如下命令在/temp/zhengzem目錄下創建一個名為filetest.txt的文件:[root@localhost~]#touch/temp/zhengze/filetest.txt

小知識:如果文件名中包含空格符號,則需要用雙引號或單引號把文件名引起來,否則系統會認為是由空格分割的多個文件。如:在當前目錄下創建名為“filetest.txt”的文件,可用下列命令:[root@localhosttemp]#touch'filetest.txt'

在實際應用中要竭力避免這種情況,否則會給文件的各種操作帶來麻煩。3.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令11

3)文件內容查看命令catcat命令所在完整路徑為/bin,所有用戶都可以使用,其功能是查看指定文件的內容。

命令格式:[root@localhosttemp]#cat–n參數

選項說明:-n表示在查看文件內容時,顯示行號

參數說明:

參數指定要查看的文件名。

例3.5可用如下命令查看文件/etc/passwd文件的內容,并顯示行號:[root@localhosttemp]#cat/etc/passwd–n

執行結果為:1root:x:0:0:root:/root:/bin/bash2bin:x:1:1:bin:/bin:/sbin/nologin3daemon:x:2:2:daemon:/sbin:/sbin/nologin

……

小知識:tac命令與cat命令類似,只是反行序顯示文件內容。3.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令12

4)分頁查看文件命令moremore命令所在完整路徑為/bin,所有用戶都可以使用,其功能是分頁顯示文件內容。

命令格式:[root@localhosttemp]#more文件名

說明:

在文件顯示過程中,可以使用如下功能鍵操作文檔:

空格或“f”鍵用于翻頁;回車鍵用于換行,“q”鍵退出文件查看。

5)分頁查看文件命令less

less命令類似于more命令,只不過其文件瀏覽功能更強的,more只能向前翻頁,而less還可以向后翻頁,除了more的功能鍵可以使用外,其功能鍵還有:“Pgup”鍵向后回滾一頁;向下的方向鍵向前翻一行,向上的方向鍵回滾一行。

另外,less命令還有搜索功能,在瀏覽狀態下的提示符下輸入“/”和所要搜索的內容,就可以在文件中檢索到所有匹配的項,按“n”(next)鍵可以找到其他匹配的項。3.1文件處理命令1.文件操作命令3.1.2文件與目錄操作命令13

6)顯示文件前幾行命令head

head命令的完整路徑是/bin,所有用戶都可以使用,其功能是顯示指定文件開頭部分的指定行數。

命令格式:[root@localhost~]#head[選項]文件名

選項說明:-n選項指定返回前幾行,缺省值為10。

例3.6可用如下命令顯示/etc/services文件的前30行:[root@localhost~]#head-n30/etc/services

7)顯示文件的后幾行命令tail

tail命令的完整路徑是/bin,所有用戶都可以使用,其功能是顯示指定文件的末尾部分的指定行數。

命令格式:[root@localhost~]#tail[選項]文件名

選項說明:-n選項指定返回后幾行,缺省值為10。-f動態顯示文件的內容,在監控日志時特別有用,當系統有變化時,相應的日志服務器就會記錄日志內容,這種變化會動態實時顯示出來。3.1文件處理命令2.目錄操作命令3.1.2文件與目錄操作命令14

1)創建目錄命令mkdir

例3.8可用如下命令在/temp目錄下創建一個新目錄dir_testa,同時在dir_testa目錄下創建兩個子目錄dir1和dir2:[root@localhost~]#mkdir-p/temp/dir_testa/dir1/temp/dir_testa/dir2[root@localhost~]#ls-l/temp/dir_testa#驗證目錄已創建好

執行結果為:total8drwxr-xr-x.2rootroot4096Apr3023:10dir1drwxr-xr-x.2rootroot4096Apr3023:10dir2

本例中,mkdir命令同時創建了多個目錄,目錄之間用空格分割,用-p參數遞歸創建目錄。mkdir命令(makedirectory)在/bin目錄下,所有用戶都可以使用,其功能是創建新目錄。

命令格式:[root@localhosttemp]#mkdir[選項][目錄名]

選項說明:-p遞歸創建目錄

例3.7可用如下命令在當前目錄下創建一個新目錄dir_test:[root@localhosttemp]#mkdirdir_test3.1文件處理命令2.目錄操作命令3.1.2文件與目錄操作命令15

2)切換當前目錄命令cd

例3.9可用如下命令將當前工作目錄切換為/temp/dir_testa/dir1目錄:[root@localhosttemp]#cd./dir_testa/dir1#執行命令前的當前目錄是/temp[root@localhostdir1]#pwd#打印當前目錄以驗證當前目錄是/temp/dir-testa/dir1

顯示結果為:/temp/dir_testa/dir1

cd命令(changedirectory)命令是shell內置命令,所有用戶都可以使用,其功能是切換當前目錄。在Linux系統中“/”表示根目錄,“..”表示父目錄,“.”表示當前目錄。

命令格式:[root@localhosttemp]#cd[參數]

參數說明:命令參數指定要將當前工作目錄其換到哪個目錄。

3)顯示當前目錄命令pwdpwd命令(printworkingdirectory)所在目錄為/bin,所有用戶都可以使用,其功能是打印當前目錄的完整路徑.

命令格式:[root@localhosttemp]#pwd3.1文件處理命令2.目錄操作命令3.1.2文件與目錄操作命令16

4)刪除當前目錄命令rmdir

例3.10可用如下命令刪除/temp/dir_testa目錄時,系統會報錯:[root@localhosttemp]#rmdir./dir_testa

執行結果為:rmdir:failedtoremove`./dir_testa':Directorynotempty

因為./dir_testa不是空目錄,它包含下一級目錄或文件,所以需要先刪除其中的子目錄和文件,才能刪除該目錄。正確的做法是:[root@localhosttemp]#ls./dir_testa#先查看要被刪除的目錄下有哪些子目錄和文件dir2[root@localhosttemp]#rmdir./dir_testa/dir2#接著刪除子目錄和文件[root@localhosttemp]#rmdir./dir_testa#然后刪除要被刪除的目錄rmdir命令(removeemptydirectory)的目錄路徑為/bin,所有用戶都可以使用,其功能是刪除所指定的空目錄,注意:所刪除的目錄必須是空目錄。

命令格式:[root@localhosttemp]#rmdir[參數]

參數說明:

命令參數指定要刪除的目錄名稱。3.1文件處理命令2.目錄操作命令3.1.2文件與目錄操作命令17

5)目錄文件復制命令cp

例3.11可用如下命令將目錄文件/temp/zhengze復制到/temp/dir_test目錄時,系統會報錯:[root@localhosttemp]#cp/temp/zhengze/temp/dir_test/

執行結果為:cp:omittingdirectory`/temp/zhengze'

錯誤提示:“略過目錄‘/temp/zhengze’”。因為復制的是目錄,所以要求使用“-r”參數,正確的做法是:[root@localhosttemp]#cp–r/temp/zhengze/temp/dir_test/

例3.12可用如下命令將文件目錄/temp/zhengze復制到/temp/dir_test目錄,同時改名為zhz:[root@localhosttemp]#cp-r/temp/zhengze/temp/dir_test/zhz[root@localhosttemp]#ls./dir_test/#驗證命令執行結果zhengzezhz

cp命令(copy)所在目錄是/bin,所有用戶都可以使用,其功能是復制一個或多個文件或目錄到目標目錄。

命令格式:[root@localhosttemp]#cp[選項][參數1][參數2]

選項說明:-r表示復制的是目錄-p表示復制時保留文件屬性,包括最后一次修改時間都不會改變。參數說明:參數1指定要復制的源目錄或文件,參數2指定文件或目錄復制的目標位置。3.1文件處理命令2.目錄操作命令3.1.2文件與目錄操作命令18

6)目錄文件剪切命令mv

例3.13可用如下命令將/temp/zhengze/studentinfo.txt移動到當前目錄:[root@localhosttemp]#mv/temp/zhengze/studentinfo.txt.

例3.14可用如下命令將當前目錄下的studentinfo.txt改名為sdinfo.txt3:[root@localhosttemp]#mvstudentinfo.txtsdinfo.txt

mv命令(move)的完整路徑是/bin,所有用戶都可以使用,其功能是剪切(移動)指定文件到目標目錄,同時可以改名

命令格式:[root@localhosttemp]#mv[參數1][參數2]

參數說明:

參數1指定要移動的源文件,參數2指定移動文件的目標位置。

小知識:clear命令鍵或“Ctrl+L”鍵清除屏幕內容。3.1文件處理命令2.目錄操作命令3.1.2文件與目錄操作命令19

7)目錄文件刪除命令rm

例3.15可用如下命令刪除當前目錄下的studentinfo.txt文件:[root@localhosttemp]#rmstudentinfo.txt

例3.16可用如下命令刪除當前目錄下的/zhengze目錄時,系統會報錯:[root@localhosttemp]#rm/temp/zhengze

顯示下列提示:rm:cannotremove`/temp/zhengze':Isadirectory

系統提示不能刪除目錄,需要用“-r”選項,一般“-r”和“-f”聯合使用,這樣系統就不在詢問,直接刪除。正確做法是:[root@localhosttemp]#rm-rf./zhengze/studentinfo.txt

rm命令(remove)的完整路徑是/bin,所有用戶都可以使用,其功能是刪除目錄或文件。注意刪除是不可恢復的。

命令格式:[root@localhosttemp]#rm[選項]參數

選項說明:-r刪除目錄-I刪除前要求確認-v詳細顯示刪除步驟-f強制(force)刪除,不提示確認。不帶此選項,系統會詢問:“是否刪除該文件”(如果是刪除目錄,刪除目錄下的每個文件或目錄時,都會進行詢問)。

參數說明:參數指定要刪除的文件或目錄,必須指定其中之一。3.1文件處理命令3.1.3鏈接文件創建命令20

創建鏈接文件的命令是ln(makelinksbetweenfiles),其完整路徑是/bin,所有用戶都可以使用,其功能是創建鏈接文件。

命令格式:[root@localhosttemp]#ln[選項]參數1參數2

選項說明:-s說明要創建軟鏈接文件,缺省值創建硬鏈接文件。

參數說明:參數1指定創建鏈接文件的源文件名;參數2指定創建的鏈接文件目標文件名。01020304硬鏈接文件的創建類似于保留屬性的文件拷貝(cp-p),但與拷貝不同的是硬鏈接文件與源文件具有相同的Inode號,硬鏈接文件與源文件同步修改(對一個文件的修改可以同步到另一文件);軟鏈接文件的創建相當于在Windows系統中創建文件的快捷方式,可以認為軟鏈接文件是指向源文件的一個符號。硬鏈接文件不能跨分區使用,也不能對目錄創建硬鏈接;軟連接既可以跨分區創建,也可以用于目錄文件。21講解:

可以看出硬鏈接文件與源文件除了Inode號相同外,其它所有屬性也都相同。軟鏈接文件與源文件的Inode號不同,而且文件明顯很小,可以看出軟鏈接文件是指向源文件的一個符號。當源文件刪除后,硬鏈接文件仍然有效,而軟軟鏈接文件就只剩下一個指向原文的符號了。

“studentinfo_soft.txt->studentinfo.txt”說明軟鏈接文件“studentinfo_soft.txt”指向的源文件是“studentinfo.txt”,“lrwxrwxrwx”中的“l”說明該文件是軟鏈接文件,且所有人對該文件都具有“rwx”權限。但是源文件的操作權限由源文件的權限設置來決定。

例3.17可用如下命令在當前目錄下分別創建studentinfo.txt的硬鏈接文件studentinfo_hard.txt和軟鏈接文件studentinfo_soft.txt:[root@localhosttemp]#lnstudentinfo.txtstudentinfo_hard.txt[root@localhosttemp]#ln-sstudentinfo.txtstudentinfo_soft.txt

用如下ls命令查看所創建的文件:[root@localhosttemp]#ls-listudentinfo*.txt

執行結果為:261758-rw-r--r--.2rootroot122May105:15studentinfo_hard.txt261762lrwxrwxrwx.1rootroot15May115:19studentinfo_soft.txt->studentinfo.txt261758-rw-r--r--.2rootroot122May105:15studentinfo.txt3.1文件處理命令3.1.3鏈接文件創建命令3.2權限管理命令3.2.1權限管理命令chmod22Linux用戶

其他人(o)所屬組(g)所有者(u)123Linux文件R、W、XR、W、XR、W、X所有者和管理員有權限修改23

例3.18可用如下命令查看/temp/sutdentifno.txt文件的權限,并為所有者添加執行權限、為用戶組添加寫權限:[root@localhosttemp]#lsstudentinfo.txt–l#查看/temp/sutdentifno.txt文件的權限

執行結果為:-rw-r--r--.2rootroot122May105:15studentinfo.txt[root@localhosttemp]#chmodu+x,g+wstudentinfo.txt

#為所有者添加執行權限、為用戶組添加寫權限[root@localhosttemp]#lsstudentinfo.txt–l

#驗證執行結果

執行結果為:-rwxrw-r--.2rootroot122May105:15studentinfo.txtchmod命令(changethepermissionsmodeofafile)的完整目錄是/bin,只有文件所有者和管理員(root用戶)才有權限執行該命令,其功能是改變用戶對文件的操作權限。

命令格式一:[root@localhost~]#chmod[選項][{ugoa}{+-=}{rwx}]文件或目錄名

選項說明:-R表示遞歸修改文件權限,即連同指定目錄下的所有文件的權限都被修改。

參數說明:u表示所有者;g表示所屬組;o表示其他人a表示所有用戶;+表示在原有權限上增加權限;-表示在原有權限上減少權限;=表示重新分配權限1.修改權限命令chmod3.2權限管理命令3.2.1權限管理命令chmod24

例3.19某個文件的權限為“rwxr-xr-x”則對應的mode值是多少?

答:由文件權限可知,對應的“二進制”序列是“111101101”,每三位為一組轉換成十進制數得755,所以對應的mode的值為755.

例3.20將/temp/yh.txt文件的權限設置為“rwxrw-rw-”。因為“rwxrw-rw-”對應的mode值為766,所以可用下列命令實現:[root@localhosttemp]#chmod766yh.txt[root@localhosttemp]#ls-lyh.txt#驗證執行結果

執行結果為:-rwxrw-rw-.1rootroot0Apr2617:07yh.txt

對于目錄文件來說,有“r”權限的用戶一定有“x”權限。

命令格式二:[root@localhost~]#chmod[-R][mode]文件名

文件的權限標志位長度為9,每三位為一組,依次代表所有者、所屬組和其他人的讀、寫和執行權限。其權限規劃和設置規則如表3.1所示:1.修改權限命令chmod3.2權限管理命令3.2.1權限管理命令chmod用戶所有者用戶組其他人位序123456789權限讀(r)寫(w)執行(x)讀(r)寫(w)執行(x)讀(r)寫(w)執行(x)取值0或10或10或10或10或10或10或10或10或1

在這種命令格式下,如果某位為“0”,則表示不具備該位所對應的權限,如果為“1”,則表示具備該位所對應的權限。以三位為一組,把對應的“0或1”序列看作是“二進制數”,然后把三組二進制數依次轉換為對應的十進制數就是相應用戶基于該文件的權限的mode值。25

講解:

如果用戶對目錄只具備“-w-”權限,是不能刪除其中的內容的,因為沒有執行權限,同理用戶對目錄只具備“-wx”權限時,用戶可以進入目錄,但不能查看其中的內容,所以也不能刪除其中的目錄或文件,只有用戶對目錄具有“rwx”權限時,才能刪除其中的目錄和文件,而與被刪除的文件或目錄的權限無關。另外,對于目錄文件,通常同時分配“r”和“x”權限,而不單獨分配“r”或“x”權限,但是對某目錄具備“r--”權限的用戶,雖然不能進入目錄,但可以查看目錄中的內容。

文件的“rwx”權限,對于文件和目錄有不同的含義,詳見下表3.2所示:2.深入理解文件權限3.2權限管理命令3.2.1權限管理命令chmod權限對文件的含義對目錄的含義讀(r)可以查看文件內容。如,可以使用cat、head、tail等命令查看文件內容??梢粤谐瞿夸浿械奈募蚰夸洝懀╳)可以修改文件內容,如,可使用vi等工具編輯、修改文件內容。可以刪除、修改該目錄下的文件或目錄。執行(x)對可執行文件有效,表示可以執行文件。可以執行cd命令,進入目錄。表3.2對于文件和目錄相同的用戶權限表示的含義不同26

例23可用如下命令查看當前Linux的文件缺省權限:[root@localhosttemp]#umask–S

執行結果為:u=rwx,g=rx,o=rx

說明:

當前Linux用戶的缺省權限是“rwxr-xr-x”,也就是說,用戶創建的所有目錄和文件的缺省權限是“rwxr-xr-x”。但需要注意的是Linux默認不給任何新建文件授予執行權限,所以,雖然當前Linux的用戶缺省權限是“rwxr-xr-x”,但新建文件的默認權限是“rw-r--r--”,只有新建目錄的默認權限是“rwxr-xr-x”。

在缺省選項“-S”的情況下,命令[root@localhosttemp]#umask的執行結果是:0022.第一個“0”,表示特殊權限,在后續章節中講解,后三位是文件的權限掩碼,即“----w--w-”,翻譯成源碼,就是“rwxr-xr-x”與命令[root@localhosttemp]#umask–S的執行效果是等價的。

缺省情況下,文件的所有者就是文件的創建者,文件的所屬組就是文件的所有者的缺省所屬組,一個用戶可以同時屬于多個所屬組,但只能有一個缺省所屬組,默認情況下,用戶的缺省組與用戶名相同。umask命令(theuser file-creationmask)是Shell內置命令,所有用戶都可以使用,其功能是顯示或定義文件的缺省權限。

命令格式:[root@localhosttemp]#umask[-S]

選項說明:-S以rwx形式顯示新建文件缺省權限3.Umask命令3.2權限管理命令3.2.2其它權限管理命令27#驗證新建目錄的缺省權限成為:754[root@localhosttemp]#mkdirumask_test[root@localhosttemp]#ls-ldumask_test/顯示結果為:drwxr-xr--.2rootroot4096May215:26umask_test/#實驗結束后,改回原值。[root@localhosttemp]#umask022

例3.24將當前Linux的文件缺省權限設置為754,即:“rwxr-xr--”。

分析:因為把754翻譯成權限掩碼是023,所以執行如下命令即可將文件缺省權限設置為754:[root@localhosttemp]#umask023[root@localhosttemp]#umask–S

顯示結果為:u=rwx,g=rx,o=r#顯示已修改為7543.Umask命令3.2權限管理命令3.2.2其它權限管理命令28#驗證新建目錄的缺省權限成為:754[root@localhosttemp]#mkdirumask_test[root@localhosttemp]#ls-ldumask_test/顯示結果為:drwxr-xr--.2rootroot4096May215:26umask_test/#實驗結束后,改回原值。[root@localhosttemp]#umask022

例3.24將當前Linux的文件缺省權限設置為754,即:“rwxr-xr--”。

分析:因為把754翻譯成權限掩碼是023,所以執行如下命令即可將文件缺省權限設置為754:[root@localhosttemp]#umask023[root@localhosttemp]#umask–S

顯示結果為:u=rwx,g=rx,o=r#顯示已修改為7543.Umask命令3.2權限管理命令3.2.2其它權限管理命令29選項說明:-name文件名

根據文件名進行搜索。-iname文件名

根據文件名進行搜索,但不區分大小寫。-size[+n|-n|=n]根據文件大小進行搜索,與“+n”、“-n”和“=n”配合使用,“n”表示數據塊的大小,1個數據塊=512字節,即1KB是兩個數據塊。“+n”表示大于n,“-n”表示小于n,“=n”表示等于n。-user用戶名

根據文件所有者進行查找。-group所屬組名

根據所屬組查找文件。[-amin|-cmin|-mmin][+n|-n|=n]“-amin”、“-cmin”和“-mmin”依次表示根據文件訪問時間(accessminute)、文件屬性修改時間(changeminute)、文件內容修改時間(modifyminute)進行查詢;“n”表示分鐘數,“+n”、“-n”和“=n”依次表示大于n分鐘、小于n分鐘和等于n分鐘。-type根據文件類型進行查找,“f”、“d”和“l”分別表示普通文件、目錄、軟鏈接文件。-inum根據i節點進行查找。[-exec|-ok]命令{}\;對find命令的查詢結果,執行指定的命令,“{}\;”是固定格式。“-exec”指執行指定命令,而不詢問,“-ok”指執行指定命令,并進行詢問。

搜索命令的執行是非常消耗系統資源的,所以在Linux系統的維護中,我們盡量少用搜索命令,特別是在服務訪問高峰期。在系統運行初期對硬盤的分區和目錄進行合理規劃、在使用過程中規范、合理使用磁盤空間,非常有利于提高系統執行效率。3.3文件搜索命令3.3.1文件搜索命令findfind命令的完整路徑是/bin,所有用戶都可以使用,其功能是在指定范圍內搜索符合條件的文件或目錄。文件查找命令支持“*”、“?”等通配符

命令格式:[root@localhosttemp]#find[搜索范圍][選項匹配條件]30

例3.26在整個計算機中查找大于100MB的文件。

分析:因為100MB=100*1024KB=100*1024*2個數據塊,所以執行下列命令即可查找到所有大于100MB的文件:[root@localhosttemp]#find/-size+204800

執行結果為:……/sys/devices/pci0000:00/0000:00:0f.0/resource1/sys/devices/pci0000:00/0000:00:0f.0/resource1_wc

例3.27可用如下命令在整個計算機中查找所有者為yh的文件:[root@localhosttemp]#find/-useryh3.3文件搜索命令3.3.1文件搜索命令find

例3.25可用如下命令在/etc目錄中搜索文件名包含“init”的所有文件:[root@localhosttemp]#find/etc-name*init*

執行結果為:/etc/sysconfig/init/etc/sysconfig/network-scripts/init.ipv6-global/etc/init.d……31

例3.29在/etc目錄下查找大于5MB而小于10MB的所有文件。

分析:因為5MB=5*1024KB=5*1024*2個數據塊=10240個數據塊,同理10MB=20480個數據塊,所以,用如下命令即可在/etc目錄下查找大于5MB而小于10MB的所有文件:[root@localhosttemp]#find/etc-size+10240-a-size-20480

執行結果為:/etc/selinux/targeted/policy/policy.24/etc/selinux/targeted/modules/active/policy.kern3.3文件搜索命令3.3.1文件搜索命令find

例3.28可用如下命令在/temp目錄下查找10分鐘內文件內容被修改過的文件:[root@localhosttemp]#find/temp-mmin-10

執行結果為(命令執行前,有意對/temp/whatday.sh進行了修改):/temp/temp/whatday.sh

另外,find命令中的匹配條件還支持“-a”(與)、“-o”(或)等邏輯操作。32

例3.32在可用如下命令/temp目錄下查找whatdate.sh文件的硬鏈接文件:[root@localhosttemp]#ls/temp/whatday.sh-li

#首先獲取文件whatdate.sh的i節點號顯示結果為:261764-rwxr-xr-x.1yhyh128May220:51/temp/whatday.sh

#用下列方法查找whatdate.sh的硬鏈接文件[root@localhosttemp]#find/temp/-inum2617643.3文件搜索命令3.3.1文件搜索命令find

例3.30

可用如下命令在/etc目錄下查找以a開頭的目錄文件:[root@localhosttemp]#find/etc-namea*-a-typed

例3.31可用如下命令在/tmp目錄下查找并刪除100MB以上的文件:[root@localhosttemp]#find/tmp-size+204800-a-typef-okrm-fr{}\;33

例3.33可用如下命令快速查找whatdate.sh文件:[root@localhosttemp]#updatedb#先更新資料庫[root@localhosttemp]#locatewhatday.sh

另外,/tmp目錄下的文件不在mlocate.db資料庫的收錄范圍之內,所以使用locate命令查找文件時不能查找到/tmp目錄下的文件。3.3文件搜索命令3.3.2其它搜索命令locate命令的完整路徑是/usr/bin,所有用戶都可以使用,其功能是在文件資料庫中查找文件。locate命令并不是在指定范圍內進行搜索,而是在一個動態更新的Linux文件資料庫中(/var/lib/mlocate/mlocate.db)搜索,所以執行速度很快。

命令格式:[root@localhosttemp]#locate[選項]文件名

選項說明;-i不區分大小寫。mlocate.db資料庫是動態更新的,如果有新建文件的信息未更新到mlocate.db資料庫中時,就找不到該文件,所以在執行該命令前,建議先用updatedb命令對mlocate.db資料庫進行更新。1.快速文件查找命令locate34

選項說明:-i不區分大小寫-v排除指定字符串(取反)

例3.36可用如下命令在/etc/passwd文件中查找包含用戶yh的行(不區分大小寫):[root@localhosttemp]#grep-iyh/etc/passwd

執行結果為:yh:x:505:505::/home/yh:/bin/bash

例3.37可用如下命令在/etc/passwd文件中查找行首不包含注釋符號“#”的行:[root@localhosttemp]#grep^#-v/etc/inittab3.3文件搜索命令3.3.2其它搜索命令whereis命令所在完整目錄是/usr/bin,所有用戶都可以使用,其功能與which類似,不同的是whereis不僅可以查找到命令所在的目錄,還可以查找到命令的幫助文件所在的目錄。

命令格式:[root@localhosttemp]#whereis命令名3.命令所在目錄查找命令whereis4.文件內容搜索命令grep

grep命令所在完整目錄是/bin,所有用戶都可以使用,其功能是在指定文件中查找包含指定字符串的行。

命令格式:[root@localhosttemp]#grep[選項]字符串文件名35

選項說明:-i不區分大小寫-v排除指定字符串(取反)

例3.36可用如下命令在/etc/passwd文件中查找包含用戶yh的行(不區分大小寫):[root@localhosttemp]#grep-iyh/etc/passwd

執行結果為:yh:x:505:505::/home/yh:/bin/bash

例3.37可用如下命令在/etc/passwd文件中查找行首不包含注釋符號“#”的行:[root@localhosttemp]#grep^#-v/etc/inittab3.3文件搜索命令3.3.2其它搜索命令whereis命令所在完整目錄是/usr/bin,所有用戶都可以使用,其功能與which類似,不同的是whereis不僅可以查找到命令所在的目錄,還可以查找到命令的幫助文件所在的目錄。

命令格式:[root@localhosttemp]#whereis命令名3.命令所在目錄查找命令whereis4.文件內容搜索命令grep

grep命令所在完整目錄是/bin,所有用戶都可以使用,其功能是在指定文件中查找包含指定字符串的行。

命令格式:[root@localhosttemp]#grep[選項]字符串文件名36例3.38可用如下命令查看mkdir命令的幫助信息:[root@localhosttemp]#manmkdir

如果是查找配置文件的幫助的信息,那么只需要配置文件即可,而不需要配置文件的絕對路徑,如果使用絕對路徑,則執行結果是顯示文件的內容,而不是對應幫助文件的信息。Linux系統中幫助信息有很多種,最主要的有兩類:命令幫助文件和配置文件幫助文件,用“1”和“5”來區別,“1”表示命令的幫助文件,“5”表示配置文件的幫助文件。以passwd命令(配置文件)為例,解釋如下:/usr/bin/passwd#是passwd命令/etc/passwd/#是passwd配置文件usr/share/man/man1/passwd.1.gz#是passwd命令的幫助文檔usr/share/man/man5/passwd.5.gz#是passwd配置文件的幫助文檔3.4幫助命令

man(manual,手冊)命令的完整路徑是/bin,所有用戶都可以使用,其功能是查找指定命令或配置文件的幫助文件(包括對命令功能的解釋和參數的功能的解釋)

命令格式:[root@localhosttemp]#man[n]命令名或配置文件n是1-8之間的數,表示不同文件的幫助信息,缺省值為“1”即命令的幫助信息。1.幫助命令man37whatis的完整路徑是/usr/bin,所有用戶都可以執行,其功能是查看命令的簡短說明。

命令格式:[root@localhosttemp]#whatis命令名

例3.40可用如下命令查看mkdir命令的簡短說明:[root@localhost~]#whatismkdir

執行結果為:mkdir(1)-makedirectories3.4幫助命令

執行manpasswd命令時優先顯示passwd命令的幫助文件,那么如何顯示passwd配置文件的幫助信息呢?下面舉例說明:

例3.39可用如下命令查詢passwd配置文件的幫助信息:[root@localhosttemp]#man5passwd#用“5”聲明,表示查看配置文件的幫助信息

使用man命令在查詢命令幫助信息的過程中,可以使用空格鍵翻到下一頁、回車鍵滾到下一行、“q”鍵退出,用“\”+關鍵字查找感興趣的信息。1.幫助命令man2.查看命令簡要說明的命令whatis38

例3.41可用如下命令查看umask命令的幫助信息:[root@localhost~]#helpumask5.幫助信息查看命令infoinfo命令的完整目錄是/usr/bin,所有用戶都可以使用,其命令格式及功能與man命令類似。6.查看命令選項的參數—help--help參數用于查找命令選項的用法。

命令格式:[root@localhost~]#命令名稱–help3.4幫助命令apropos的完整路徑是/usr/bin,所有用戶都可以執行,其功能是查看配置文件的簡短說明。

命令格式:[root@localhost~]#apropos配置文件名稱4.查看Shell內置命令的幫助信息的命令helphelp命令是Shell內置命令,所有用戶都可以使用,其功能是獲取Shell內置命令的幫助信息。

命令格式:[root@localhost~]#helpshell內置命令3.查看配置文件簡要說明的命令apropos

小知識:Shell是命令解釋器,其內置了一些專用命令,如:cd、umask、if、case、for等。用whereis命令和which命令找不到Shell內置命令的具體目錄。39

參數說明:

參數指定要為哪個用戶修改密碼,缺省情況下修改用戶自己的密碼。root用戶可以修改任何用戶的密碼,所以參數中要指定為哪個用戶修改密碼,普通用戶只能修改自己的密碼,所以使用缺省值。

注意:

(1)所有用戶都可以修改自己的密碼,但root可以修改任何用戶的密碼;

(2)修改用戶密碼要遵循密碼規則,否則系統將拒絕修改密碼(root除外)3.5用戶管理常用命令useradd命令的完整目錄是/usr/sbin,只有root用戶才能執行該命令,其功能是添加新用戶。

命令格式:[root@localhost~]#useradd用戶名

2.設置用戶密碼命令passwdpasswd命令的完整目錄是/usr/bin,所有用戶都可以使用,其功能是設置指定用戶的密碼。

命令格式:[root@localhost~]#passwd[參數]1.創建用戶命令useradd40

例3.42可用如下命令查看當前登錄系統的用戶信息:[root@localhost~]#who

執行結果為:roottty12018-05-0602:45yhpts/02018-05-0609:59(01)

說明當前有兩個用戶登錄系統,root管理員于2018-05-0602:45從本機(缺省登錄主機)通過本地終端(tty1)登錄系統;yh用戶于2018-05-0609:59從01主機通過遠程終端(pts/0)登錄系統。3.5用戶管理常用命令who命令所在完整目錄是/usr/bin,所有用戶都可以使用,其功能是查看登錄用戶的信息。

命令格式:[root@localhost~]#who3.查看登錄用戶信息who41

例3.43可用如下命令查看當前登錄用戶的詳細信息:[root@localhost~]#w

執行結果:10:13:08up2:29,4users,loadaverage:0.00,0.00,0.00USERTTYFROMLOGIN@IDLEJCPUPCPUWHATroottty1-02:4512:520.02s0.00sbashrootpts/00102:460.00s0.11s0.03swrootpts/10109:5814:360.02s0.02s-bashyhpts/20109:5913:330.01s0.01s–bash

結果解釋:

說明系統于10:13:08啟動,已連續運行2小時29分鐘,當前共有4個用戶登錄系統,系統前5分鐘、10分鐘、15分鐘的平均負載均為0.00。同時顯示了每個用戶的登錄方式、登錄主機、登錄時間、登錄后的空閑時間、CPU累計占用時間、當前執行的命令占用的CPU時間和最近完成的操作。3.5用戶管理常用命令w命令的完整目錄是/usr/bin,所有用戶都可以使用,其功能是查看登錄用戶的詳細信息。

命令格式:[root@localhost~]#w4.查看登錄用戶詳細信息的命令who42

需要注意的是:gzip只能壓縮文件,不能壓縮目錄,而且不保留原文件。經gzip壓縮后,被壓縮的原文件就自動刪除,系統不再保留,同樣,經gunzip解壓后的原.zip格式壓縮文件也被自動刪除,系統不再保留。

另外,gunzip與gzip–d命令的功能是等效的,可以根據個人習慣選擇使用。3.6壓縮、解壓縮命令

gzip(GNUzip)和gunzip命令的完整目錄都是/bin,所有用戶都可以使用,命令gzip的功能是壓縮文件,該命令壓縮的文件格式是.gz,命令gunzip的功能是解壓縮.gz格式的壓縮文件。

命令格式:[root@localhost~]#gzip[文件名][root@localhost~]#gunzip[.zip格式的壓縮文件]

1.gzip和gunzip命令43

例3.44把/temp目錄打包為.tar.gz格式的壓縮包。第一種方法:用tar命令,打包的同時壓縮:[root@localhost/]#tar-vczftemp.tar.gz/temp第二種方法:先用tar命令壓縮為.tar包文件,再用gzip命令壓縮為.gz格式壓縮包:[root@localhost/]#tar-cvftemp.tar/temp[root@localhost/]#gziptemp.tar

例3.45對temp.tar.gz壓縮包進行解壓。第一種方法:用tar命令,解壓的同時解包[root@localhost/]#tar-vxzftemp.tar.gz第二種方法:用gzip–d命令先解壓,在用tar命令解包[root@localhost/]#gzip-dtemp.tar.gz[root@localhost/]#tar-xvftemp.tar3.6壓縮、解壓縮命令tar命令的完整目錄是/bin,所有用戶都可以使用,其功能是對目錄進行打包壓縮或解包解壓。壓縮后的文件格式是.tar.gz。

命令格式:[root@localhost~]#tar[選項][壓縮后的新文件名][被打包壓縮的原目錄文件]

選項說明:-c打包-x解包-v顯示詳細信息-f指定文件名-z打包的同時壓縮或解包的同時壓縮

2.tar命令44

例3.46可用如下命令將/temp目錄壓縮為.zip格式的壓縮包:

[root@localhost/]#zip–rtemp.zip/temp

例3.47可用如下命令解壓temp.zip:[root@localhost/]#unziptemp.zip3.6壓縮、解壓縮命令zip命令和unzip命令的完整目錄都是/usr/bin,所有用戶都可以使用,用于壓縮和解壓文件或目錄,壓縮后的文件格式為.zip。Linux和Windows都支持.zip格式的壓縮和解壓縮,而且zip命令壓縮后保留原文,unzip命令解壓后保留原壓縮文件。

命令格式:[root@localhost/]#zip[選項][壓縮后的文件名][壓縮前的文件或目錄][root@localhost/]#unzip.zip格式的壓縮文件

選項說明:-r表示壓縮的是目錄,缺省為壓縮文件。3.zip和unzip命令4.bzip2和bunzip2命令bzip2命令和bunzip2用于壓縮或解壓縮文件,壓縮后的文件格式為.bz2。需要注意的是:該命令只壓縮文件,不壓縮目錄,但bzip2壓縮比非常驚人,對于大文件的壓縮非常有效。

命令格式:[root@localhost/]#bzip2[-k][需要被壓縮的原文件][root@localhost/]#bunzip2[-k][壓縮原文件]選項說明:-k表示在解壓縮文件時,保留原文件45方法二:先用tar命令打包為etc.tar文件,然后再用bzip2壓縮為etc.tar.bz2壓縮包:[root@localhosttemp]#tar–czvfetc.tar/etc[root@localhosttemp]#bzip2-ketc.tar

例3.50解壓whatday.sh.bz2壓縮包,同時保留壓縮包:[root@localhosttemp]#bunzip2-kwhatday.sh.bz2

例3.51解壓etc.tar.bz2壓縮包。

方法一:[root@localhosttemp]#tar-xjvfetc.tar.bz2

方法二:[root@localhosttemp]#bunzip2–ketc.tar.bz2#得到etc.tar[root@localhosttemp]#tar-xzvfetc.tar3.6壓縮、解壓縮命令

溫馨提示

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

評論

0/150

提交評論