wc
Linux系統中的wc(Word Count)指令的功能為統計指定檔案中的位元組數、字數、行數,并将統計結果顯示輸出。
1.指令格式:
wc [選項]檔案...
2.指令功能:
統計指定檔案中的位元組數、字數、行數,并将統計結果顯示輸出。該指令統計指定檔案中的位元組數、字數、行數。如果沒有給出檔案名,則從标準輸入讀取。wc同時也給出所指定檔案的總統計數。
3.指令參數:
-c 統計位元組數。
-l 統計行數。
-m 統計字元數。這個标志不能與 -c 标志一起使用。
-w 統計字數。一個字被定義為由空白、跳格或換行字元分隔的字元串。
-L 列印最長行的長度。
-help 顯示幫助資訊
--version 顯示版本資訊
2.ln
ln是linux中又一個非常重要指令,它的功能是為某一個檔案在另外一個位置建立一個同步的連結.當我們需要在不同的目錄,用到相同的檔案時,我們不需要在每一個需要的目錄下都放一個必須相同的檔案,我們隻要在某個固定的目錄,放上該檔案,然後在 其它的目錄下用ln指令連結(link)它就可以,不必重複的占用磁盤空間。
ln [參數][源檔案或目錄][目标檔案或目錄]
Linux檔案系統中,有所謂的連結(link),我們可以将其視為檔案的别名,而連結又可分為兩種 : 硬連結(hard link)與軟連結(symbolic link),硬連結的意思是一個檔案可以有多個名稱,而軟連結的方式則是産生一個特殊的檔案,該檔案的内容是指向另一個檔案的位置。硬連結是存在同一個檔案系統中,而軟連結卻可以跨越不同的檔案系統。
軟連結:
1.軟連結,以路徑的形式存在。類似于Windows作業系統中的快捷方式
2.軟連結可以 跨檔案系統 ,硬連結不可以
3.軟連結可以對一個不存在的檔案名進行連結
4.軟連結可以對目錄進行連結
硬連結:
1.硬連結,以檔案副本的形式存在。但不占用實際空間。
2.不允許給目錄建立硬連結
3.硬連結隻有在同一個檔案系統中才能建立
這裡有兩點要注意:
第一,ln指令會保持每一處連結檔案的同步性,也就是說,不論你改動了哪一處,其它的檔案都會發生相同的變化;
第二,ln的連結又分軟連結和硬連結兩種,軟連結就是ln –s 源檔案 目标檔案,它隻會在你標明的位置上生成一個檔案的鏡像,不會占用磁盤空間,硬連結 ln 源檔案 目标檔案,沒有參數-s, 它會在你標明的位置上生成一個和源檔案大小相同的檔案,無論是軟連結還是硬連結,檔案都保持同步變化。
ln指令用在連結檔案或目錄,如同時指定兩個以上的檔案或目錄,且最後的目的地是一個已經存在的目錄,則會把前面指定的所有檔案或目錄複制到該目錄中。若同時指定多個檔案或目錄,且最後的目的地并非是一個已存在的目錄,則會出現錯誤資訊。
必要參數:
-b 删除,覆寫以前建立的連結
-d 允許超級使用者制作目錄的硬連結
-f 強制執行
-i 互動模式,檔案存在則提示使用者是否覆寫
-n 把符号連結視為一般目錄
-s 軟連結(符号連結)
-v 顯示詳細的處理過程
選擇參數:
-S “-S<字尾備份字元串> ”或 “--suffix=<字尾備份字元串>”
-V “-V<備份方式>”或“--version-control=<備份方式>”
--help 顯示幫助資訊
3.whereis
whereis指令隻能用于程式名的搜尋,而且隻搜尋二進制檔案(參數-b)、man說明檔案(參數-m)和源代碼檔案(參數-s)。如果省略參數,則傳回所有資訊。
和find相比,whereis查找的速度非常快,這是因為linux系統會将 系統内的所有檔案都記錄在一個資料庫檔案中,當使用whereis和下面即将介紹的locate時,會從資料庫中查找資料,而不是像find指令那樣,通 過周遊硬碟來查找,效率自然會很高。
但是該資料庫檔案并不是實時更新,預設情況下時一星期更新一次,是以,我們在用whereis和locate 查找檔案時,有時會找到已經被删除的資料,或者剛剛建立檔案,卻無法查找到,原因就是因為資料庫檔案沒有被更新。
whereis [-bmsu] [BMS 目錄名 -f ] 檔案名
whereis指令是定位可執行檔案、源代碼檔案、幫助檔案在檔案系統中的位置。這些檔案的屬性應屬于原始代碼,二進制檔案,或是幫助檔案。whereis 程式還具有搜尋源代碼、指定備用搜尋路徑和搜尋不尋常項的能力。
-b 定位可執行檔案。
-m 定位幫助檔案。
-s 定位源代碼檔案。
-u 搜尋預設路徑下除可執行檔案、源代碼檔案、幫助檔案以外的其它檔案。
-B 指定搜尋可執行檔案的路徑。
-M 指定搜尋幫助檔案的路徑。
-S 指定搜尋源代碼檔案的路徑。
4.find
Linux下find指令在目錄結構中搜尋檔案,并執行指定的操作。Linux下find指令提供了相當多的查找條件,功能很強大。由于find具有強大的功能,是以它的選項也很多,其中大部分選項都值得我們花時間來了解一下。即使系統中含有網絡檔案系統( NFS),find指令在該檔案系統中同樣有效,隻你具有相應的權限。 在運作一個非常消耗資源的find指令時,很多人都傾向于把它放在背景執行,因為周遊一個大的檔案系統可能會花費很長的時間(這裡是指30G位元組以上的檔案系統)。
find pathname -options [-print -exec -ok ...]
用于在檔案樹種查找檔案,并作出相應的處理
pathname: find指令所查找的目錄路徑。例如用.來表示目前目錄,用/來表示系統根目錄。
-print: find指令将比對的檔案輸出到标準輸出。
-exec: find指令對比對的檔案執行該參數所給出的shell指令。相應指令的形式為'command' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的作用相同,隻不過以一種更為安全的模式來執行該參數所給出的shell指令,在執行每一個指令之前,都會給出提示,讓使用者來确定是否執行。
4.指令選項:
-name 按照檔案名查找檔案。
-perm 按照檔案權限來查找檔案。
-prune 使用這一選項可以使find指令不在目前指定的目錄中查找,如果同時使用-depth選項,那麼-prune将被find指令忽略。
-user 按照檔案屬主來查找檔案。
-group 按照檔案所屬的組來查找檔案。
-mtime -n +n 按照檔案的更改時間來查找檔案, - n表示檔案更改時間距現在n天以内,+ n表示檔案更改時間距現在n天以前。find指令還有-atime和-ctime 選項,但它們都和-m time選項。
-nogroup 查找無有效所屬組的檔案,即該檔案所屬的組在/etc/groups中不存在。
-nouser 查找無有效屬主的檔案,即該檔案的屬主在/etc/passwd中不存在。
-newer file1 ! file2 查找更改時間比檔案file1新但比檔案file2舊的檔案。
-type 查找某一類型的檔案,諸如:
b - 塊裝置檔案。
d - 目錄。
c - 字元裝置檔案。
p - 管道檔案。
l - 符号連結檔案。
f - 普通檔案。
-size n:[c] 查找檔案長度為n塊的檔案,帶有c時表示檔案長度以位元組計。-depth:在查找檔案時,首先查找目前目錄中的檔案,然後再在其子目錄中查找。
-fstype:查找位于某一類型檔案系統中的檔案,這些檔案系統類型通常可以在配置檔案/etc/fstab中找到,該配置檔案中包含了本系統中有關檔案系統的資訊。
-mount:在查找檔案時不跨越檔案系統mount點。
-follow:如果find指令遇到符号連結檔案,就跟蹤至連結所指向的檔案。
-cpio:對比對的檔案使用cpio指令,将這些檔案備份到錄音帶裝置中。
另外,下面三個的差別:
-amin n 查找系統中最後N分鐘通路的檔案
-atime n 查找系統中最後n*24小時通路的檔案
-cmin n 查找系統中最後N分鐘被改變檔案狀态的檔案
-ctime n 查找系統中最後n*24小時被改變檔案狀态的檔案
-mmin n 查找系統中最後N分鐘被改變檔案資料的檔案
-mtime n 查找系統中最後n*24小時被改變檔案資料的檔案
5.tail
tail 指令從指定點開始将檔案寫到标準輸出.使用tail指令的-f選項可以友善的查閱正在改變的日志檔案,tail -f filename會把filename裡最尾部的内容顯示在螢幕上,并且不但重新整理,使你看到最新的檔案内容.
1.指令格式;
tail[必要參數][選擇參數][檔案]
用于顯示指定檔案末尾内容,不指定檔案時,作為輸入資訊進行處理。常用檢視日志檔案。
-f 循環讀取
-q 不顯示處理資訊
-v 顯示詳細的處理資訊
-c<數目> 顯示的位元組數
-n<行數> 顯示行數
--pid=PID 與-f合用,表示在程序ID,PID死掉之後結束.
-q, --quiet, --silent 從不輸出給出檔案名的首部
-s, --sleep-interval=S 與-f合用,表示在每次反複的間隔休眠S秒
本文轉自327051661 51CTO部落格,原文連結:http://blog.51cto.com/andyboge/1945068,如需轉載請自行聯系原作者