Linux常用命令示例:
(*)小常識:在Linux中使用命令操作檔案時,可以僅輸入檔名的前幾個字元,然後按鍵盤的“Tab”鍵補全檔名的後面部分,若輸入的字元是多個檔名的起始字元,則系統列出這些檔案。 按鍵盤上的“↑”、“↓”鍵,可以翻閱以前使用過的命令,也可以輸入命令“history”檢視以前使用過的命令。
一、檔案類
1.pwd
顯示當前工作目錄。該命令無引數,直接輸入命令pwd
2.cd
進入指定目錄。cd命令格式為:cd [路徑],其中路徑可以為相對路徑或者絕對路徑。舉例如下:
cd /home/user //進入/home/user目錄。
cd data/doc //進入當前目錄下的子目錄data的子目錄doc。
cd / //退回到根目錄。
cd .. //退回到上級目錄,當前目錄為根目錄時,該命令執行不會改變當前目錄。
cd ~ //進入使用者家目錄,若當前使用者為user,則進入目錄/home/user中。
cd //cd命令後無引數時,其功能與命令“cd ~”相同。
cd ~test //進入使用者test的家目錄/home/test。
3.ls
列出指定目錄或者當前目錄下的檔名。ls是使用者最常用的命令之一,因為使用者經常需要檢視某個目錄下有哪些檔案。
ls命令格式為:ls [選項] [檔名列表],其中選項是對ls命令要執行功能的進一步說明,檔案表示要顯示的檔名。
(1)選項
-l:每行顯示一個檔案的詳細資訊,稱為以長格式顯示,該選項最常用。若不加該引數,ls將在一行中顯示多個檔名,並以不同顏色來標記不同型別的檔案。
使用舉例:
ls //以每行多個檔名的方式,列出當前目錄所包含的檔名。
ls –F /home/bright /var //分別列出目錄/home/bright和/var所包含的檔名,並在檔名後用指定字元指出檔案的型別,例如*代表可執行檔案。
ls -aF/home/bright //以帶標記的形式列出目錄/home/bright所包含的全部檔名,包括隱藏檔案。
ls -laF/home/bright //以帶標記的長格式列出目錄/home/bright所包含的全部檔名,包括隱藏檔案。
ls -laFin /home/bright //在上面命令的基礎上,首列顯示iNode號,並且把檔案屬主和屬組以UID號和GID號的形式顯示。
4.mkdir和touch
mkdir:用於建立資料夾,在命令列後面直接跟所要建立的資料夾即可
mkdir MyHistory //生成目錄名為MyHistory的目錄
mkdir -p a/b/c/d/e //在目錄中建立多級目錄a/b/c/d/e
touch:用於直接建立檔案,可以不填寫內容,直接跟檔名
touch hello.c //生成hello.c檔案,內容為空
touch 1.txt 2.txt 3.txt //同時建立多個檔案,檔案內容為空
5.cp
cp命令的功能是將給出的檔案或目錄拷貝到指定的檔案或目錄中。
cp命令的格式為:cp [選項] 原始檔 目標檔案,其中選項是對cp命令要執行功能的進一步說明,原始檔表示要複製的檔案,目標檔案表示原始檔將被複制的目的目錄名或者目的檔名。
(1)選項
-a:該選項通常在拷貝目錄時使用,它保留連結、檔案屬性,並遞迴地拷貝子目錄中的內容,其作用等於dpr選項的組合。
-d:拷貝時保留連結。
-p:除複製原始檔的內容外,還將把其最後修改時間和訪問許可權也複製到目標檔案中。
-r:若原始檔是目錄檔案,cp將遞迴複製該目錄下所有的子目錄和檔案,目標檔名必須為一個目錄檔名。
-l:不作拷貝,只是連結檔案。
(2)使用舉例
cp1.txt /home/bright/2.txt //將當前目錄中的檔案1.txt複製到目錄/home/bright/中,檔名為2.txt。
cp -r /home/bright/cml /home/bright/yxj //將/home/bright/cml目錄中的所有檔案及其子目錄拷貝到目錄/home/bright/yxj中。
cp /home/user/*.txt//將/home/user/目錄下以.txt為字尾的檔案複製到當前目錄中。
cp -r a b c //其中a,b ,c均為目錄,此命令列的意思是將a和b複製到c
6.mv
mv命令能夠將指定檔案或目錄改名或將指定檔案或目錄進行移動。mv命令中若原始檔名與目標檔名處於同一個目錄中,則執行檔案改名功能;若源目錄檔名與目標目錄檔名處於同一個目錄中,則執行目錄改名功能;其餘情況執行檔案或者目錄移動功能。在跨檔案系統移動檔案或目錄時,先執行拷貝檔案或目錄功能,再將原有檔案或目錄進行刪除,同時,連結至該檔案的連結也將丟失。
mv命令的格式為:mv [選項] 原始檔 目標檔案,其中選項是對mv命令要執行功能的進一步說明,原始檔表示要移動或改名的檔案,目標檔案表示要將原始檔移動到何處或改為新的名字。
(1)選項
-i:互動方式操作,如果mv操作將導致對已存在目標檔案的覆蓋,則系統要求使用者回答“y”進行檔案覆蓋或“n”放棄覆蓋。
-f:禁止互動操作,在mv操作要覆蓋已有的目標檔案時不給任何提示而直接覆蓋目標檔案。
-u:只有在原始檔比目標檔案新,或者目標檔案不存在時,才執行移動功能。
(2)使用舉例
mv /home/user/data/ /var/tmp //將/home/user/data/目錄移動到/var/中,目錄名變更為tmp。
mv /home/user/1.txt /var/tmp/1.txt //將檔案/home/user/1.txt移動到目錄/var/tmp/中,檔名為1.txt。
mv /home/user/2.txt 20.txt //將檔案/home/user/2.txt重新命名為20.txt,檔案的位置不變。
mv a b d //其中a,b ,d均為目錄,此命令列的意思是將a和b移動到d目錄
7.rm
Linux系統中隨時會有檔案或者目錄變得過時且毫無用處,此時可以用rm命令將過時檔案或者目錄刪除。該命令可以一次刪除一個或多個檔案或目錄,對於連結檔案,只是刪除連結,原有檔案保持不變。
rm命令的格式為:rm [選項] 檔案,其中選項是對rm命令要執行功能的進一步說明,檔案表示要刪除的檔名。
(1)選項
-f:刪除過程中直接刪除指定的檔案或子目錄而不需要進行確認。
-r:將指定的目錄及其子目錄遞迴地刪除,刪除時需要使用者確認。
-i:刪除檔案或者目錄前進行確認,輸入y或者yes進行刪除,輸入n或者no或者其它字元則放棄刪除。
(2)使用舉例
rm /home/user/20.txt //刪除目錄/home/user/下的檔案20.txt
rm –r /var/tmp/ //以遞迴形式刪除目錄/var/tmp/及其包含的檔案和子目錄。
rm -i a* //以互動確認的形式刪除當前目錄下以字元a開頭的檔案。
rm –r -f /home/user/tmp/ //以遞迴方式刪除目錄/home/user/tmp/及其所包含的檔案和子目錄,刪除過程中不需要確認,直接刪除。
8.cat
顯示文字檔案的內容。該命令後可以跟多個文字檔名,將依次顯示每個檔案的內容。
cat命令的格式為:cat [選項] 檔案,其中選項是對cat命令要執行功能的進一步說明,檔案表示要顯示內容的檔名。
(1)選項
-v:用特殊字元形式顯示控制字元,但LFD與TAB除外,加了- v引數後,-T和- E引數將起作用。
-T:將TAB顯示為“ù I”,該引數需要與-v一起使用,如果沒有使用-v,則-T將被忽略。
-E:每行的末尾將顯示一個$符,需要與-v一起使用。
-u:輸出不經過緩衝區。
-A:等於-vET。
-t:等於-vT。
-e:等於-vE。
(2)使用舉例
cat 1.txt //在螢幕上顯示1.txt 檔案的內容。
cat -A 1.txt //顯示檔案1.txt的內容,同時顯示檔案中所包含的特殊字元。
cat 1.txt 2.txt //依次顯示1.txt和2.txt檔案的內容。
cat test[123] //依次顯示檔案test1、test2和test3的內容。
9.head
head命令用於檢視指定文字檔案開頭的內容,預設head命令列印其相應檔案的開頭10行。
head命令的格式為:head [選項] 檔案,其中選項是對head命令要執行功能的進一步說明,檔案表示要檢視內容的檔案列表。
(1)選項
-c:指明要檢視檔案的前多少個字元。
-n:指明要檢視檔案的前多少行。
-q:在檔案內容前不顯示檔名標識。
-v:在檔案內容前顯示檔名標識。
(2)使用舉例
head –c 100 1.txt // 顯示當前目錄下檔案1.txt的前100個字元。
head -v -c -12 a.txt //帶有檔名的顯示,不顯示結尾處的12個字元,顯示前面的所有字元(也就是除去後面12個字元,顯示前面的所有字元)
head -c -12 a.txt //不顯示結尾處的12個字元,顯示前面的所有字元(也就是除去後面12個字元,顯示前面的所有字元)。
head -v -n 12 a.txt //以行的顯示方式進行顯示,並且帶有檔名資訊,顯示從檔案頭開始的12行
head –n 5 –v 1.txt 2.txt 3.txt//顯示當前目錄下檔案1.txt、2.txt、3.txt的前5行內容,在每個檔案的內容前顯示相應的檔名標誌。
head -v -n -12 a.txt //以行的顯示方式進行顯示,並且帶有檔名資訊,顯示時除去從尾部開始倒數的12行之後,顯示剩餘的所有行
head -v -n 12 a.txt b.txt //同時顯示a.txt和b.txt的檔案,帶有檔名資訊,同時顯示前12行
10.tail
tail命令用於檢視指定文字檔案尾部的內容。
tail命令的格式為:tail [選項] 檔案,其中選項是對tail命令要執行功能的進一步說明,檔案表示要檢視內容的檔案列表。
(1)選項
-c:指明要檢視檔案的後多少個字元。
-n:指明要檢視檔案的後多少行。
-q:在檔案內容前不顯示檔名標識。
-v:在檔案內容前顯示檔名標識。
+:從指定行以後開始顯示。
-:從距檔案尾部的指定行處開始顯示。
(2)使用舉例
tail –c 100 1.txt // 顯示當前目錄下檔案1.txt的後100個字元。
tail –n 5 1.txt 2.txt 3.txt//顯示當前目錄下檔案1.txt、2.txt、3.txt的後5行內容,在每個檔案的內容前顯示相應的檔名標誌。
tail +3 1.txt // 從第3行開始顯示當前目錄下檔案1.txt的內容。
tail -3 1.txt // 顯示當前目錄下檔案1.txt的後3行內容。
tail -8 b.txt //顯示當前檔案的後8行
11.more
more命令用於分屏顯示文字檔案的內容,當一滿屏文字內容顯示完之後,暫停顯示並在螢幕底部列印“--More--”和已顯示文字佔全部文字的百分比標記,若要繼續顯示,按回車鍵螢幕內容向上滾動一行或按空格鍵螢幕內容向上滾動一屏。
more命令的格式為:more [選項] 檔案,其中選項是對more命令要執行功能的進一步說明,檔案表示要分屏顯示的檔名列表。
more命令在顯示完一滿屏暫停時,可以接收命令,通過命令來操作當前檔案。
(1)選項
-num:num為數字,表示一滿屏所包含的行數。
+num:num為數字,從第num行開始顯示。
-p或-c:下一屏的內容不是以滾動方式顯示,而是先清除當前螢幕內容,然後立即顯示下一屏全部內容。
-d:在每屏的底部顯示使用者自定義的提示資訊。
-l:不處理<Ctrl+l>(換頁符)。如果沒有給出這個選項,則more命令在顯示了一個包含有< Ctrl+l >字元的行後將暫停顯示,並等待接收命令。
-s:檔案中連續的空白行壓縮成一個空白行顯示。
(2)命令
i 空格:i為數字,表示按空格鍵後顯示下面的i行,若沒有i或者i為0時顯示下一整屏。
i 回車:i為數字,表示按回車鍵後顯示下面的i行,若沒有i或者i為0時顯示下一行。
i Ctrl+d:i為數字,表示按Ctrl+d鍵後顯示下面的i行,若沒有i或者i為0時往下顯示半屏(一般為11行)。
i d:i為數字,表示輸入完數字i後再按“d”鍵,功能同i Ctrl+D。
i z:i為數字,表示輸入完數字i後再按“z”鍵,顯示下面的i行,若沒有i或者i為0時顯示下一整屏。
i s:跳過下面的i行後再顯示一個整屏,若沒有i或者i為0時跳過1行後再顯示一個整屏。
i f:跳過下面的i屏後再顯示一個整屏,若沒有i或者i為0時跳過1屏後再顯示一個整屏。
i Ctrl+b或i b:向前翻滾i屏後再顯示一個整屏,若沒有i或者i為0時向前翻滾1屏後再顯示一個整屏。
i/pattern:查詢第i次出現的字串,/pattern表示要查詢的字串緊跟在“/”後,若沒有i或者i為0時自動將i的值設為1。
‘:(單引號和冒號)回到上次搜尋命令執行前的地方。
q或Q:退出more。
=:顯示當前行號。
v:啟動vi編輯器,從當前行開始對當前檔案進行編輯。
h或?:顯示命令幫助資訊。
!Shell命令:執行Shell命令。
(3)使用舉例
more1.txt // 分頁顯示檔案1.txt的內容。
more –s /home/user/test*// 分頁顯示目錄/home/user/下所有以字母test開頭的檔案內容,並且將這些檔案中的連續空白行壓縮成一個空白行顯示。
more –16 1.txt // 以每屏16行的形式分頁顯示檔案1.txt的內容。
more +10 2.txt // 從檔案2.txt的第10行起分頁顯示檔案2.txt的內容。
12.less
less命令的功能幾乎和more命令一樣,也是按頁顯示檔案內容,但less命令在顯示檔案內容時,允許使用者既可以向後翻閱也可以向前翻閱檔案內容。
13.od
od命令可以以十進位制、八進位制、十六進位制或ASCII碼字元的形式顯示檔案內容。
od命令的格式為:od [選項] 檔案,其中選項是對od命令要執行功能的進一步說明,檔案是要顯示內容的檔名列表。
(1)選項
-A:檔案內容的地址資訊顯示形式,其中d表示以十進位制形式顯示地址資訊;o表示以八進位制形式顯示地址資訊;x表示以十六進位制形式顯示地址資訊;n表示不顯示地址資訊,其中o為系統預設值。
-t:檔案內容的顯示形式,其中c表示以ASCII字元形式顯示檔案內容,對於特殊字元,使用轉義符形式顯示;d表示使用有符號十進位制數形式顯示檔案內容;f表示以浮點數形式顯示檔案內容;o表示以八進位制數形式顯示檔案內容;u表示以無符號十進位制數形式顯示檔案內容;x表示以十六進位制數形式顯示檔案內容。o為系統預設值。
-w:以指定的每行寬度顯示檔案內容。
(2)使用舉例
od –A x –t c 1.txt // 地址資訊以十六進位制形式,檔案內容以ASCII字元形式顯示檔案1.txt的內容。
od –w 40 –t f 2.txt // 地址資訊以預設的八進位制形式,檔案內容以浮點數形式顯示檔案2.txt的內容,每行寬度指定為40。
14.wc
wc命令的功能是統計指定檔案內容的行數、字數及所佔的位元組數,其中行結束標誌為換行符,字結束標誌是空格或Tab分隔符。
wc命令的格式為:wc [選項] 檔案,其中選項是對wc命令所要執行功能的進一步說明,檔案是要統計的檔名列表。
(1)選項
-c:顯示檔案的位元組數。
-m:顯示檔案的字元數。字元數可能不等於位元組數,因為有的字元編碼方案中1個字元用2個或多個位元組表示。
-l:顯示檔案的行數。
-w:顯示檔案的字數。
-L:顯示檔案中最長行的長度。
(2)使用舉例
wc t1 t2 // 顯示檔案t1、t2的統計資訊,統計資訊包括4列,分別為行數、字數、位元組數和檔名,最後一行是總計行。
15.ln
ln命令的格式為:ln [選項] 源 目標,其中選項是對命令ln要執行功能的進一步說明,源表示要建立連結的檔名或目錄名,目標表示產生的連結檔名或目錄名或儲存連結檔案的目錄。
(1)選項
-f:若目標已經存在,則無需確認覆蓋目標。
-i:若目標已經存在,則提示使用者是否覆蓋目標。
-v:顯示命令執行資訊。
-s:建立符號連結。
(2)硬連結
當ln命令中無-s選項時表示建立硬連結,硬連結建立成功時,原始檔的連結數自動增加1,硬連結的使用舉例如下:
ln /var/test.c /home/user/t.c // 為檔案/var/test.c建立硬連結檔案/home/user/t.c,檔案/home/user/t.c和/home/user/t.c使用相同的inode。
ln –v t1 t2 t3 /home/user/t/ // 為當前目錄下檔案t1、t2、t3建立硬連結,硬連結檔名與原始檔名相同,硬連結檔案儲存在目錄/home/user/t/中,同時顯示命令執行資訊。
(3)符號連結
當ln命令中加-s選項時表示建立符號連結,符號連結的建立不會改變原始檔的iNode連結數,符號連結的使用舉例如下:
ln –s /var/exp myp //為檔案/var/exp建立符號連結,符號連結檔名為myp。
ln –s /var/ftp/ ftp //為目錄/var/ftp/建立符號連結,符號連結檔名為ftp。
16.tar
tar是檔案和目錄的備份命令,能夠將指定的檔案和目錄打包成一個歸檔檔案即備份檔案。
tar命令的格式為:tar 主選項 [輔選項] 檔名,其中,主選項是必須的,輔選項可選。
(1)主選項
-c:建立新的歸檔檔案。
-r:把要備份的檔案和目錄追加到歸檔檔案的未尾。
-t:列出歸檔檔案的內容。
-u:用新檔案替換歸檔檔案中的舊檔案,若歸檔檔案中沒有相應的舊檔案,則把新檔案追加到備份檔案的末尾。
-x:從歸案檔案中恢復檔案。
(2)輔助選項
-b:該選項是為磁帶機設定的,其後跟一數字,用來說明資料塊的大小。
-f:使用歸檔檔案或裝置,這個選項通常是必選的。
-k:還原備份檔案時,不覆蓋已經存在的檔案。
-m:還原備份檔案時,把所有檔案的修改時間設定為現在。
-M:建立多卷的歸檔檔案,以便在幾個磁碟中存放。
-v:詳細報告tar處理的檔案資訊。如無此選項,tar不報告檔案資訊。
-w:每一步都要求確認。
-z:用gzip來壓縮/解壓縮檔案,加上該選項後可以將檔案檔案進行壓縮,但還原時也一定要使用該選項進行解壓縮。
-j:用bzip2來壓縮/解壓縮檔案,加上該選項後可以將檔案檔案進行壓縮,但還原時也一定要使用該選項進行解壓縮。
-Z:呼叫compress來壓縮歸檔檔案,與-x聯用時呼叫uncompress完成解壓縮。
-C:配合主選項“x”,指明解壓檔案要儲存的目錄。
(3)使用舉例
tar -cvf etc.tar /etc // 將目錄/etc下的所有檔案和子目錄備份打包到當前目錄下的檔案etc.tar中,並顯示打包過程。
tar -czvf etc.tar.gz /etc //將目錄/etc下的所有檔案和子目錄備份打包並以gzip格式進行壓縮,形成檔案etc.tar.gz,並顯示過程。
tar -cjvf etc.tar.bz /etc //將目錄/etc下的所有檔案和子目錄備份打包並以bzip2格式進行壓縮,形成檔案etc.tar.bz2,並顯示過程。
tar -xZvf etc.tar.z //解壓縮並還原歸檔檔案etc.tar.z中的檔案和目錄。
17.find
find根據指定的條件從檔案系統中搜尋指定的檔案或目錄,然後做處理
find . -mtime 1 -print //按時間查詢,查詢當前目錄最近訪問在1天之內的檔案並進行列印
find -user 0 -print //按使用者查詢,查詢使用者為root的所有檔案,並進行列印
find . -name pass //從當前目錄下根據命名來查詢檔案pass
find . -name perl //從當前目錄下根據命名來查詢檔案perl
注意:對於名稱的搜尋,有無引號是不同,使用引號時搜素的是一類檔案,直接使用*.html搜尋的是固定的檔案
find . -mtime 10 -print //查詢10天前的檔案,執行的動作時列印(-print),mtime:最後一次修改或建立時間
find . -user 1000 -size +400 -print // 查詢使用者為user的id,大小大於400塊的檔案,並且使用動作進行列印,(-size中+為大於,-為小於)
find ~ -perm 777 > ~/holes //按檔案的許可權查詢,查詢許可權為777的,並放置到家目錄下holes檔案裡邊
find /ecport/home -type f -atime +365 -exec rm {} \; // 按照型別查詢,其中f為普通檔案,超過365天的檔案,其中-exec執行操作rm,{}為佔位符,即找到的內容,\;,其中分號為防止解析為普通字元,保持轉義性
perl -p -i.bak -e "s/Linux/wujikang/g" test3.txt; //對test3.txt進行備份進行以.bak備份,並且替換test3.txt檔案中的所有Linux字串為wujikang
find /export/home/html -name "*.html" -print | xargs perl -p -i.bak -e “s/Copyright 2004/Copyright 2005/g;” //將/export/home/html目錄下所有後綴為html的檔案中“/Copyright 2004”內容替換為” /Copyright 2005”;其中xargs為一個命令, 然後作用perl作為引數.
xargs:將前面結果作為後面命令(perl)的引數,如以下例子所示:
cat pass | xargs more //使用more進行顯示pass的內容
ls passwd | xargs more //使用more進行顯示passwd
echo passwd.txt | xargs | rm
perl:對檔案內容進行處理
-p :按模式處理
-i.bak:對檔案進行處理之前,先備份
-e :excut 執行
18.grep
grep:從管道或檔案中搜尋所滿足條件的行
格式為:grep string fileName
如:grep wu test.txt //查詢檔案test.txt裡邊的字串wu,並且會將含有字串wu的一整行列印到終端
19.where/which
想知道所執行的命令到底在那個目錄下嗎?那就which吧!which vi 搜尋vi所在的路徑(在path下搜尋,搜尋到就停止)
whereis vi 搜尋vi所在的路徑(在path下搜尋,搜尋到繼續搜尋,直到找到所有的vi)
20.History
輸出使用過的命令
set history=30 設定最多允許儲存前三十個已執行命令的記錄
history 顯示歷史記錄資訊
history 5 顯示第五條歷史記錄資訊
!n 重複執行第n條歷史命令
!! 重複執行上一條歷史命令
21.alias
別名:針對於系統中已經存在的命令,給它取個別名
csh :alias h history
bash:alias h(別名)=history(原始命令)
alias home=’cd;ls’
alias c=clear
alias h=history
alias 顯示所有設定的別名
unalias copy 取消所設定的別名
二、許可權類
1.chmod
--注--- Unix中的許可權是 (分為擁有者、同組人、其他人),在各個分類下面分別有 (寫許可權、讀許可權、執行許可權),具體來說就是使用rwx,進行表示並且控制
chmod命令用於改變檔案的訪問許可許可權。在chmod命令中,使用者和訪問許可許可權既可以用字母表示,也可以用數字表示。
(1)選項
-R:表示許可許可權的設定對指定目錄及其子目錄下的所有檔案和目錄都有效。
-v:顯示命令執行的資訊
(2)使用舉例
chmod –v a+x /home/user/test //給所有使用者追加檔案/home/user/test的執行許可權,同時顯示命令執行的資訊。
chmod –v +s -t /home/user/test //給檔案/home/user/test設定SUID和SGID位,去掉粘附位,同時顯示命令執行的資訊。
chmod g+r,o-x example //給同組使用者追加對檔案example的讀許可權,同時取消其他使用者對檔案example的執行許可權。
chmod ug+w,o=rx u+s example //給檔案主和同組使用者追加對檔案example的寫許可權,設定其它使用者對檔案example的許可權為讀和執行,設定檔案具有SUID位
chmod 1644 /home/user/a* //將目錄/home/user/目錄下的所有以字母a開頭的檔案訪問許可許可權設定為具有粘附位,檔案主可讀可寫,同組使用者可讀,其它使用者可讀。
chmod 4765 test1 test2 //將當前目錄下的檔案test1、test2的訪問許可許可權設定為具有SUID位,檔案主可讀可寫可執行,同組使用者可讀可寫,其它使用者可讀可執行。
chmod –R 5700 /etc/tmp/ // 以遞迴的形式將目錄/etc/tmp/及其子目錄下的所有檔案和目錄訪問許可權設定為具有SUID位和粘附位,檔案主可讀可寫可執行,同組使用者和其它使用者無操作許可權。
2.chown
chown命令可以改變指定檔案的檔案主,出於安全的考慮,該命令只能由root使用者執行。
chown命令的格式為:chown [選項] [組:] 使用者 檔案,其中選項是對chown命令功能的進一步說明,組表示要將檔案所設定的組,使用者表示檔案的新檔案主,檔案表示要設定的檔案列表。
(1)選項
-R:以遞迴的形式改變指定目錄及其子目錄下檔案和目錄的檔案主。
-v:顯示命令執行的資訊。
(2)使用舉例
chown root/home/user/1.txt//將檔案/home/user/1.txt的檔案主設定為root使用者。
chown –Rv suwu150 /var/ftp/ //將目錄/var/ftp/及其子目錄下的所有檔案和目錄的檔案主設定為使用者suwu150,並顯示命令執行資訊。
chown –v root:user 1.txt //將檔案1.txt的組設定為root組,檔案主設定為使用者user,同時顯示命令執行資訊。
3.chgrp
chgrp命令可以改變指定檔案所屬的組
chgrp命令的格式為:chgrp [選項] 組名 檔案,其中選項是對chgrp命令功能的進一步說明,組名錶示指定檔案即將所屬的組,檔案表示需要修改組的檔案列表。
(1)選項
-R:以遞迴的形式改變指定目錄及其子目錄下檔案和目錄的組。
-v:顯示命令執行的資訊。
(2)使用舉例
chgrp –v root 1.txt 2.txt //將當前目錄下檔案1.txt、2.txt的組變更為root,同時顯示命令執行的資訊。
chgrp -R linux /var/tmp/ //以遞迴形式將目錄/var/tmp/及其子目錄下的檔案和目錄的組變更為linux。
4.su
su命令能夠從當前使用者切換到另外一個使用者,在使用者切換時,若當前使用者為root,則不需要輸入任何密碼,否則,必須正確輸入要切換的使用者密碼。su命令的格式為:su [使用者名稱],其中使用者名稱就是要切換的使用者名稱,當用戶名省略時,切換到root使用者。要返回原來的使用者環境,輸入命令exit或者按鍵盤的CTRL+d鍵。
5.useradd或adduser
命令useradd和adduser的功能完全相同,都是在系統中增加新的使用者,該命令必須由root使用者執行。命令useradd的格式為:useradd [選項] 使用者名稱,其中選項是建立新使用者時的進一步要求,使用者名稱是要建立的新使用者的名字。
(1)選項
-d:指明要建立的使用者目錄,該選項預設時在/home/目錄下建立一個與使用者名稱同名的目錄作為使用者的家目錄。
-e:指明使用者失效時間,即在指定日期之後,該使用者不能登入系統。
-G:指明新建立使用者所屬的組列表,一個使用者可以屬於多個組。
(2)使用舉例
useradd user1 //在系統中增加新使用者user1,同時在/home/目錄下為使用者user1建立使用者家目錄/home/user1。
useradd –d/home/u2 –e 2008-1-1 user2//在系統中增加新使用者user2,同時建立新目錄/home/u2/為使用者家目錄,並且使用者將在2008-1-1之後失效。
6.passwd
passwd命令用來修改使用者的密碼.
passwd命令的格式為:passwd [使用者名稱],當用戶名預設時表示修改當前使用者密碼,當指明使用者名稱時,表示修改指定使用者的密碼。只有root使用者才能修改其他使用者的密碼,
非root使用者只能修改自己的密碼。Linux要求密碼最少為6個字元,並且鼓勵使用者設定夾雜數字、字母和其它字元的較長密碼。
7.id
id查使用者的資訊
id root 檢視使用者的UID,SID
id -a root
8. who/w/whoami/who am i
顯示當前已登入本系統的所有使用者資訊
who //用來查詢目前有那些人在線上。
w //用來查詢目前有那些人在線上,同時顯示出那些人目前的工作。
who am i // 顯示你真實的使用者ID
whoami //僅顯示當前登入使用者名稱
9.ps
ps:用來檢視系統中正在執行的程序的資訊
(什麼是程序:一個程式的執行過程)
ps -e :檢視正在執行的程序(執行過程中、就緒狀態下的)
ps -f:詳細資訊
eg:
suguniang 2709 2571 0 05:07 pts/2 00:00:00 cat
使用者 PID PPID 啟動時間 tt 執行時間 哪個程式檔案
tt:表示該程序是從哪個控制檯啟動的。不是使用者啟動的,是系統執行時自動啟動的程序
kill pid //殺死PID所指定的程序
三、磁碟類
1.mount
mount命令的功能是掛載其它檔案系統到當前檔案系統中,被掛載的檔案系統必須是當前Linux系統所能識別的系統。
mount命令的格式為:mount [選項] [掛載點],其中選項是對mount命令要執行功能的進一步說明,掛載點表示被掛載的檔案系統的根目錄在當前檔案系統中的位置。通常,
目錄/mnt/作為掛載其他檔案系統的掛載點,如果需要同時掛載多個檔案系統,則經常在目錄/mnt/下建立多個對應的子目錄作為特定檔案系統的掛載點,例如目錄/mnt/cdrom/作
為光碟掛載點,目錄/mnt/nfs/作為網路檔案系統掛載點,目錄/mnt/floppy/作為軟盤掛載點等。
(1)選項
-a:掛載/etc/fstab檔案中所列的全部檔案系統。
-t:指定所要掛載的檔案系統名稱,系統所支援的檔案系統資訊在/proc/filesystems檔案中儲存。
-o:後跟指定選項,如nolock、iocharset等,選項之間用逗號分隔。
-n:掛載檔案系統但是不把所掛載檔案系統的資訊寫入/etc/mtab檔案中,/etc/mtab檔案中儲存當前所掛載檔案系統的資訊。
-w:將所掛載的檔案系統設為可寫,但是所掛載的檔案系統本身可寫時,該選項才有效,例如,以可寫形式掛載CDROM到系統中,但仍然不能寫資料到CDROM中。
-r:將所掛載的檔案系統設為只讀。
-h:mount命令的使用幫助。
(2)使用舉例
mount //檢視當前所掛載的檔案系統資訊。
mount–t vfat /dev/hda2 /mnt/vfat //將位於hda2分割槽的FAT格式的檔案系統掛載到目錄 /mnt/vfat/下。
mount–w –t nfs192.168.0.6:/test /mnt/nfs //將主機192.168.0.6中的目錄/test/以網路檔案系統、可讀寫的方式掛載到目錄/mnt/nfs/中。主機192.168.0.6必須啟動NFS服務並在配置檔案中設定目錄/test/可以讀寫,並且當前使用者對目錄/test/有讀寫許可權。
2.umount
umount命令的功能是解除安裝利用mount掛載的檔案系統,umount命令的格式為:umount 掛載點,其中掛載點表示要解除安裝檔案系統的掛載點,例如:
umount /mnt/vfat //解除安裝以/mnt/vfat/為掛載點的檔案系統,當前目錄不能為/mnt/vfat/或其子目錄。
umount /mnt/nfs //解除安裝以/mnt/nfs/為掛載點的檔案系統,當前目錄不能為/mnt/nfs/或其子目錄。
3.df
df命令用來顯示硬碟各分割槽和已掛載檔案系統的資訊,df命令的格式為:df [選項] [檔案],其中選項表示對df命令要執行功能的進一步說明,檔案表示顯示指定檔案所在檔案系統的資訊。
(1)選項
-a:顯示所有本機和已掛載檔案系統的資訊,包括0區塊的檔案系統,例如/proc、/sys、/dev/pts等。
-i:顯示各檔案系統的inode使用情況。
-k:顯示磁碟空間使用情況,以KB為單位顯示。
-t:列出所有屬於指定檔案系統型別的磁碟分割槽空間的使用情況。
-x:列出所有不屬於指定檔案系統型別的磁碟分割槽空間的使用情況。
-T:列出每個磁碟分割槽所安裝的檔案系統名稱。
-l:僅列出本機的檔案系統資訊。
(2)使用舉例
df //顯示本機及其已掛載檔案系統所在分割槽的空間使用情況。
df /boot //顯示目錄/boot所在檔案系統的分割槽空間使用情況。
df –ai //顯示所有檔案系統的inode使用情況。
df –text3 //顯示所有ext3檔案系統所在分割槽空間使用情況。
4.du
du命令的功能是顯示指定檔案或目錄所佔磁碟空間的大小,du命令的格式為:du [選項] [檔案],其中選項是對du命令要執行功能的進一步說明,檔案表示要顯示所佔磁碟空間大小的檔案或目錄。
(1)選項
-a:顯示指定目錄及其子目錄下的所有檔案和目錄所佔磁碟空間大小,以KB為單位,檔案預設時表示當前目錄。此處顯示的大小是檔案所佔磁碟空間的大小,而不是檔案實際內容的大小,例如某檔案包含的內容實際大小是10位元組,它在磁碟上佔用一個磁碟塊,而一個磁碟塊的大小為4KB,則顯示該檔案所佔用的磁碟空間為4KB。
-b:以位元組為單位顯示檔案或目錄的實際大小。
-c:在顯示資訊的最後加一個統計行。
-h:在顯示的大小後加上K(KB)、M(MB)、G(GB)等單位標記,以提高資訊的可讀性。
-s:只列出檔案或目錄的總計行。
-x:只列出屬於同一檔案系統的檔案和目錄資訊。
(2)使用舉例
du –ab/home/user/txt/ //以位元組為單位,列出目錄/home/user/txt/及其子目錄下所有檔案和子目錄的實際大小。
du –ch *.txt //以單位K、M、G等,列出當前目錄下所有以.txt為字尾檔案所佔磁碟空間大小,並顯示統計資訊。
四、模組類
1.lsmod
Linux系統為了保證能方便地支援新裝置、新功能,而又不會無限擴大核心規模,對裝置驅動和檔案系統部分採用了可動態載入的模組化設計方式,使用者在需要時可以動態加
載這些模組,使用完畢後可以動態解除安裝這些暫時不用的模組,以減少核心對系統記憶體的佔用。
lsmod命令能夠列出當前系統中已經載入的模組。lsmod命令形式簡單,無引數和選項。分四列顯示當前載入的模組,第一列顯示模組名稱;第二列以位元組為單位顯示模組的
大小;第三列顯示正在使用該模組的程式數量,該值為0時表示該模組當前未被使用,可以解除安裝;第四列顯示正在使用該模組的動態可載入模組名稱,其他使用該模組的程式名
稱不被顯示。
2.insmod
insmod命令能夠將一個可動態載入的核心模組載入到核心中。通常情況下,系統核心模組的檔案字尾為“.ko”,而擴充套件核心模組的檔案字尾為“.o”,系統核心模組位於目
錄“/lib/modules/2.6.18-8.10WS”的各個子目錄中,擴充套件模組位於使用者指定的目錄中。該命令只能由root使用者執行。
insmod命令的格式為:insmod 模組檔名,舉例如下:
insmod/lib/modules/2.6.18-8.10WS/kernel/fs/fat/fat.ko // 載入核心模組fat.ko,若該模組已經載入,會給出該模組已經載入的錯誤提示。
3.rmmod
rmmod命令能夠將核心中未被使用的模組進行解除安裝,正在使用的模組不能被解除安裝,該命令只能由root使用者執行。rmmod命令的格式為:rmmod [選項] 模組名,其中選項是
對rmmod功能的進一步說明,模組名錶示要解除安裝的模組名字,模組名可以包含字尾,也可以包含字尾。
(1)選項
-v:顯示命令執行的詳細資訊。
-f:危險的選項,建議不使用,該選項表示強制解除安裝指定模組,而不管該模組當前是否正在被使用,或者是否