linu作業系統利用find命令如何查詢某個目錄的位置

時間 2021-08-30 09:50:43

1樓:竹子

如果你忘記了httpd.conf這個檔案在系統的哪個目錄下,可以使用如下命令來查詢某個目錄的位置:find / -name httpd.conf

這個命令語法規則就是直接在find後面寫上 -name,表明要求系統按照檔名查詢,最後寫上httpd.conf這個目標檔名即可。稍後系統會在計算機螢幕上顯示出查詢結果列表:

2樓:元氣一號

find命令的語法格式:

find  [查詢路徑] [查詢條件] [處理動作]

find path -option [ -print ] [ -exec -ok command ] {} \;

使用說明:

expression 中可使用的選項有二三十個之多,在此只介紹最常用的部分。

-exec:對搜尋的結果執行指定的shell命令。注意格式要正確:"-exec 命令 {} \;"。注意“{}” 與\;之間有空格。

-mount,-xdev : 只檢查和指定目錄在同一個檔案系統下的檔案,避免列出其它檔案系統中的檔案

-amin -n : 在最近的 n 分鐘內被讀取過

-amin +n : 在 n 分鐘之前被讀取過

-anewer file : 比檔案 file 更晚被讀取過的檔案

-atime -n : 在最近的 n 天內讀取過的檔案

-atime +n : 在 n 天前讀取過的檔案

-cmin -n : 在最近的 n 分鐘內被修改過

-cmin +n : 在 n 分鐘前被修改過

-cnewer file :比檔案 file 更新的檔案

-ctime -n : 在最近的 n 天內修改過的檔案

-ctime +n : 在 n 天前修改過的檔案

-empty : 空的檔案-gid n or -group name : gid 是 n 或是 group 名稱是 name

-ipath p,-path p : 路徑名稱符合 p 的檔案,ipath 會忽略大小寫

-name name,-iname name : 檔案名稱符合 name 的檔案。iname 會忽略大小寫

-size n[cwbkmg] : 檔案大小 為 n 個由字尾決定的資料塊。其中字尾含義為:

b: 代表 512 位元組的區塊(如果使用者沒有指定字尾,則預設為 b)

c: 表示位元組數

k: 表示 kilo bytes (1024位元組)

w: 字 (2位元組)

m:兆位元組(1048576位元組)

g: 千兆位元組 (1073741824位元組)

-type c : 檔案型別是 c 的檔案。

d: 目錄

c: 字型裝置檔案

b: 區塊裝置檔案

p: 具名貯列

f: 一般檔案

l: 符號連結

s: socket

-pid n : process id 是 n 的檔案

你可以使用 () 將運算式分隔,並使用下列運算。

exp1 -and exp2

! expr

-not expr

exp1 -or exp2

exp1,exp2

範例:將目前目錄及其子目錄下所有延伸檔名是 c 的檔案列出來。

# find . -name "*.c"

將目前目錄其其下子目錄中所有一般檔案列出

# find . -ftype f

將目前目錄及其子目錄下所有最近 20 天內更新過的檔案列出

# find . -ctime -20

查當前目錄下的所有普通檔案

#find . -type f -exec ls -l {} \;

例如:[root@localhost test]# find -type f -ls // 如果不指定查詢路徑,則在當前路徑查詢

461307    4 -rwxrwxrwx   1 root     root           25 aug 15 21:41 ./f3

461333    0 -rwxr--r--   1 root     root            0 aug 15 16:46 ./f1

1700    4 -rw---x--x   1 root     root            6 aug 15 17:50 ./f2

461335    4 -rw-r--r--   1 root     root           23 aug 15 17:49 ./f1.gz

3樓:654鄉

語法:find  [查詢位置]  [查詢條件]  [處理動作]

例如1、find /var -name  "*.txt"

搜尋find目錄下以.txt結尾的檔案

2、find /var -name "[a-z]"

搜尋/var目錄下以所有字母開頭的檔案

3、find  /var -name "abc"

搜尋在/var目錄下以abc開頭的檔案

4、find /var -perm 644

搜尋在/var目錄下屬性為644的檔案

5、find  /var -user root

搜尋在當/var目錄下屬主為root的檔案

6、find /var -mtime -3

搜尋/var 目錄下更改時間再3天以內的檔案

7、find /var -mtime +3

搜尋在/var 目錄下更改時間超過3天的檔案

8、find /etc -type -d

搜尋在/etc 目錄下檔案型別為d的目錄檔案

9、find /etc -type l

搜尋在/etc 目錄下檔案型別為l的連結檔案

10、find /var -size +1000000c

搜尋在/var目錄下檔案大小大於1m的檔案 (位元組為單位)

11、find  /var -perm 700 |xargs chmod 777

找出/var目錄下所有許可權為700的檔案,並把其許可權設定為777

12 find /var -type f |xargs ls -l

在/var目錄下查詢出檔案並檢視檔案的詳細資訊

1、想檢視當前資料夾及子資料夾裡有沒有檔名為“abc”的檔案

# find . -name abc

. :表示當前目錄

-name:表示要根據名稱查詢

2、想檢視當前資料夾及子資料夾裡有沒有”xyz”目錄

# find . -type d -name xyz

3、想找出當前資料夾及子資料夾裡所有字尾是”.txt”的檔案

# find . -name “*.txt”#別忘了雙引號

4、想查詢當前目錄及其子資料夾中“roc”使用者自己的檔案有哪些

# find . -user roc

-user:用於設定所屬使用者的名稱,此處可替換為-group,即所屬使用者組的名稱

5、想查詢當前資料夾及子資料夾裡許可權設定為755的所有檔案

# find . -perm 755

-perm:用於設定許可權

6、想查詢當前資料夾及子資料夾裡的同時含有b字元和3字元的檔案:用到正規表示式技術

# find . -regex ‘.*b.*3′

-regex:表示使用正規表示式進行匹配。請注意,此命令會和“全路徑”進行匹配,也就是說前面要加.*,因為輸出結果中會有“./”符號。

7、如果想全部輸出用find命令查詢出的”*.abc”檔案的內容

# find . -type f -name “*.abc” -exec cat {} \;

-exec 表示由find找到的匹配項會作為“-exec後面設定的命令”的引數

可以使用-ok代替-exec,這樣對每個匹配項進行操作,都會要求使用者確認(y為是,n為否)

命令最後的{} \; 別忘了寫,其中{}代表用find查詢到的結果中的每一個查詢項(檔名)。

find ./ -name "*.txt" -exec ls -l {} \;

查詢當前目錄的.txt檔案並以列表形式列出來

find ./ -name "*.txt" -exec mv {} {}d \;

批量修改當前目錄下.txt檔案的字尾名改為.txtd

8、查詢當前目錄下在5分鐘內被訪問過的檔案

# find . -amin -5

訪問過用amin,修改過用mmin,檔案狀態改變過用cmin

精確到分鐘的用amin,mmin,cmin,精確到天的用atime,mtime,ctime

在5分鐘之內的用-5,在5分鐘以上的用+5

9、想查詢當前目錄及子目錄下檔案大小大於10m的所有檔案

# find . -size +10000000c

-size:表示檔案大小,+表示大於某個數,-表示小於某個數。c表示單位是位元組,你可以將c換成k,m,g。

10、上述所有的find命令都是查詢當前目錄及其子目錄。如果不想深入到子目錄中,而是隻查詢當前一層目錄,則可以:

# find . -maxdepth 1 -name “*.c”

11、或/非查詢

find –name ’tmp’ –o –name ’mina*’

% 該命令查詢檔名為’tmp’或是匹配’mina*’的所有檔案。

find ! –name ’tmp’

% 該命令查詢檔名不是’tmp’的所有檔案。

-o和!都是針對直接跟著的條件而言的,比如

find . ! -name "*.zip" -type f:查詢檔案型別的,且不以zip結尾的檔案

find . ! -type f -name "*.zip":查詢非檔案型別的,且以zip結尾的檔案

作業系統課程設計,作業系統課程設計(linux)

一目瞭然 設計題目 1設計題目 cpu排程 cpu排程演算法的模擬實現 具體內容 編寫演算法,實現cpu排程演算法fcfs 非搶佔sjf 可搶佔優先權排程 rr 針對模擬程序,利用cpu排程演算法進行排程 進行演算法評價,計算平均週轉時間和平均等待時間 要求 排程所需的程序引數由輸入產生 手工輸入 ...

linu作業系統有哪些用處,linux作業系統有哪些用處

老男孩教育 1.linux作為企業級伺服器的應用 linux系統可以為企業架構www伺服器 資料庫伺服器 負載均衡伺服器 郵件伺服器 dns伺服器 伺服器 路由器等,不但使企業降低了運營成本,同時還獲得了linux系統帶來的高穩定性和高可靠性,且無須考慮商業軟體的版權問題。2.嵌入式linux系統應...

檢視linu作業系統為多少位,檢視linux 作業系統為多少位

花臂華盛頓 1.執行 uname a 命令 那個高亮的 i686 or 有時候會是i386 說明作業系統是32位的,但是如果顯示的是 x86 64,那就說明這個作業系統是64位的。2 執行 uname m 命令 輸出顯示的是x86 64,就說明系統是64位的3.使用 file 命令 file lib...