新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Linux入門時(shí)必學(xué)60個(gè)文件處理命令

Linux入門時(shí)必學(xué)60個(gè)文件處理命令

作者: 時(shí)間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

2.格式

find [path][options][expression]

path指定目錄路徑,系統(tǒng)從這里開始沿著目錄樹向下查找文件。它是一個(gè)路徑列表,相互用空格分離,如果不寫path,那么默認(rèn)為當(dāng)前目錄。

3.主要參數(shù)

[options]參數(shù):

-depth:使用深度級別的查找過程方式,在某層指定目錄中優(yōu)先查找文件內(nèi)容。

-maxdepth levels:表示至多查找到開始目錄的第level層子目錄。level是一個(gè)非負(fù)數(shù),如果level是0的話表示僅在當(dāng)前目錄中查找。

-mindepth levels:表示至少查找到開始目錄的第level層子目錄。

-mount:不在其它文件系統(tǒng)(如Msdos、Vfat等)的目錄和文件中查找。

-version:打印版本。

[expression]是匹配表達(dá)式,是find命令接受的表達(dá)式,find命令的所有操作都是針對表達(dá)式的。它的參數(shù)非常多,這里只介紹一些常用的參數(shù)。

—name:支持統(tǒng)配符*和?。

-atime n:搜索在過去n天讀取過的文件。

-ctime n:搜索在過去n天修改過的文件。

-group grpoupname:搜索所有組為grpoupname的文件。

-user 用戶名:搜索所有文件屬主為用戶名(ID或名稱)的文件。

-size n:搜索文件大小是n個(gè)block的文件。

-print:輸出搜索結(jié)果,并且打印。

4.應(yīng)用技巧

find命令查找文件的幾種方法:

(1)根據(jù)文件名查找

例如,我們想要查找一個(gè)文件名是lilo.conf的文件,可以使用如下命令:

find / -name lilo.conf

find命令后的“/”表示搜索整個(gè)硬盤。

(2)快速查找文件

根據(jù)文件名查找文件會遇到一個(gè)實(shí)際問題,就是要花費(fèi)相當(dāng)長的一段時(shí)間,特別是大型文件系統(tǒng)和大容量硬盤文件放在很深的子目錄中時(shí)。如果我們知道了這個(gè)文件存放在某個(gè)目錄中,那么只要在這個(gè)目錄中往下尋找就能節(jié)省很多時(shí)間。比如smb.conf文件,從它的文件后綴“。conf”可以判斷這是一個(gè)配置文件,那么它應(yīng)該在/etc目錄內(nèi),此時(shí)可以使用下面命令:

find /etc -name smb.conf

這樣,使用“快速查找文件”方式可以縮短時(shí)間。

(3)根據(jù)部分文件名查找方法

有時(shí)我們知道只某個(gè)文件包含有abvd這4個(gè)字,那么要查找系統(tǒng)中所有包含有這4個(gè)字符的文件可以輸入下面命令:

find / -name '*abvd*'

輸入這個(gè)命令以后,系統(tǒng)會將在/目錄中查找所有的包含有abvd這4個(gè)字符的文件(其中*是通配符),比如abvdrmyz等符合條件的文件都能顯示出來。

(4)使用混合查找方式查找文件

find命令可以使用混合查找的方法,例如,我們想在/etc目錄中查找大于500000字節(jié),并且在24小時(shí)內(nèi)修改的某個(gè)文件,則可以使用-and (與)把兩個(gè)查找參數(shù)鏈接起來組合成一個(gè)混合的查找方式。

find /etc -size +500000c -and -mtime +1

mv

1.作用

mv命令用來為文件或目錄改名,或者將文件由一個(gè)目錄移入另一個(gè)目錄中,它的使用權(quán)限是所有用戶。該命令如同DOS命令中的ren和move的組合。

2.格式

mv[options] 源文件或目錄 目標(biāo)文件或目錄

3.[options]主要參數(shù)

-i:交互方式操作。如果mv操作將導(dǎo)致對已存在的目標(biāo)文件的覆蓋,此時(shí)系統(tǒng)詢問是否重寫,要求用戶回答“y”或“n”,這樣可以避免誤覆蓋文件。

-f:禁止交互操作。mv操作要覆蓋某個(gè)已有的目標(biāo)文件時(shí)不給任何指示,指定此參數(shù)后i參數(shù)將不再起作用。

4.應(yīng)用實(shí)例

(1)將/usr/cbu中的所有文件移到當(dāng)前目錄(用“。”表示)中:

$ mv /usr/cbu/ * .

(2)將文件cjh.txt重命名為wjz.txt:

$ mv cjh.txt wjz.txt

ls

1.作用

ls命令用于顯示目錄內(nèi)容,類似DOS下的dir命令,它的使用權(quán)限是所有用戶。

2.格式

ls [options][filename]

3.options主要參數(shù)

-a, ——all:不隱藏任何以“。” 字符開始的項(xiàng)目。

-A, ——almost-all:列出除了“ . ”及 “…… ”以外的任何項(xiàng)目。

——author:印出每個(gè)文件著作者。

-b, ——escape:以八進(jìn)制溢出序列表示不可打印的字符。

——block-size=大?。簤K以指定大小>;的字節(jié)為單位。

-B, ——ignore-backups:不列出任何以 ~ 字符結(jié)束的項(xiàng)目。

-f:不進(jìn)行排序,-aU參數(shù)生效,-lst參數(shù)失效。

-F, ——classify:加上文件類型的指示符號 (*/=@| 其中一個(gè))。

-g:like -l, but do not list owner.

-G, ——no-group:inhibit display of group information.

-i, ——inode:列出每個(gè)文件的inode號。

-I, ——ignore=樣式:不印出任何符合Shell萬用字符樣式>;的項(xiàng)目。

-k:即——block-size=1K.

-l:使用較長格式列出信息。

-L, ——dereference:當(dāng)顯示符號鏈接的文件信息時(shí),顯示符號鏈接所指示的對象,而并非符號鏈接本身的信息。

-m:所有項(xiàng)目以逗號分隔,并填滿整行行寬。

-n, ——numeric-uid-gid:類似-l,但列出UID及GID號。

-N, ——literal:列出未經(jīng)處理的項(xiàng)目名稱,例如不特別處理控制字符。

-p, ——file-type:加上文件類型的指示符號 (/=@| 其中一個(gè))。

-Q, ——quote-name:將項(xiàng)目名稱括上雙引號。

-r, ——reverse:依相反次序排列。

-R, ——recursive:同時(shí)列出所有子目錄層。

-s, ——size:以塊大小為序。

4.應(yīng)用舉例

ls命令是系統(tǒng)使用頻率最多的命令,它的參數(shù)也是Linux命令中最多的。使用ls命令時(shí)會有幾種不同的顏色,其中藍(lán)色表示是目錄,綠色表示是可執(zhí)行文件,紅色表示是壓縮文件,淺藍(lán)色表示是鏈接文件,加粗的黑色表示符號鏈接,灰色表示是其它格式文件。ls最常使用的是ls- l,見圖1所示。



關(guān)鍵詞: Linux 處理命令

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉