偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

通過find命令找到你要找的東西

系統(tǒng) Linux
find 命令有巨多的選項(xiàng)可以幫助你準(zhǔn)確定位你在 Linux 系統(tǒng)上需要尋找的文件。這篇文章討論了一系列非常有用的選項(xiàng)。

[[317715]]

find 命令有巨多的選項(xiàng)可以幫助你準(zhǔn)確定位你在 Linux 系統(tǒng)上需要尋找的文件。這篇文章討論了一系列非常有用的選項(xiàng)。

在 Linux 系統(tǒng)上有許多用于查找文件的命令,而你在使用它們時(shí)也有巨多的選項(xiàng)可以使用。

例如,你不僅可以通過文件的名稱來(lái)查找文件,還可以通過文件的所有者或者組、它們的創(chuàng)建時(shí)間、大小、分配的權(quán)限、最后一次訪問它們的時(shí)間、關(guān)聯(lián)的信息節(jié)點(diǎn),甚至是文件是否屬于系統(tǒng)上不再存在的帳戶或組等等來(lái)查找文件。

你還可以指定搜索從哪里開始,搜索應(yīng)該深入到文件系統(tǒng)的什么位置,以及搜索結(jié)果將告訴你它所找到的文件的數(shù)量。

而所有這些要求都可以通過 find 命令來(lái)處理。

下面提供了根據(jù)這些要求查找文件的示例。在某些命令中,錯(cuò)誤(例如試圖列出你沒有讀取權(quán)限的文件)輸出將被發(fā)送到 /dev/null,以便我們不必查看它?;蛘撸覀兛梢院?jiǎn)單地以 root 身份運(yùn)行以避免這個(gè)問題。

請(qǐng)記住,還有更多的其他選項(xiàng)。這篇文章涵蓋了很多內(nèi)容,但并不是 find 命令幫助你定位查找文件的所有方式。

選擇起點(diǎn)

使用 find,你可以選擇一個(gè)起點(diǎn)或從你所在的位置開始。要選擇的搜索的起點(diǎn),請(qǐng)?jiān)趩卧~ find 后輸入它。例如,find /usrfind ./bin 將在 /usr 目錄或當(dāng)前位置下的 bin 目錄開始搜索,而 find ~ 將在你的主目錄中開始搜索,即使你當(dāng)前位于當(dāng)前文件系統(tǒng)中的其他位置。

選擇你要找的

最常用的搜索策略之一是按名稱搜索文件。這需要使用 -name 選項(xiàng)。

默認(rèn)情況下,find 會(huì)顯示找到的文件的完整路徑。如果你在命令中添加 -print,你會(huì)看到同樣的結(jié)果。如果你想查看與文件相關(guān)的詳細(xì)信息—-例如:文件的長(zhǎng)度、權(quán)限等,你需要在你的 find 命令的末尾添加 -ls 參數(shù)。

  1. $ find ~/bin -name tryme
  2. /home/shs/bin/tryme
  3. $ find ~/bin -name tryme -print
  4. /home/shs/bin/tryme
  5. $ find ~/bin -name tryme -ls
  6. 917528 4 -rwx------ 1 shs shs 139 Apr 8 2019 /home/shs/bin/tryme

你也可以使用子字符串來(lái)查找文件。例如,如果你將上面示例中的 tryme 替換為 try*,你將會(huì)找到所有名稱以 try 開頭的文件。(LCTT 譯注:如果要使用通配符 * ,請(qǐng)將搜索字符串放到單引號(hào)或雙引號(hào)內(nèi),以避免通配符被 shell 所解釋)

按名稱查找文件可能是 find 命令最典型的用法,不過還有很多其他的方式來(lái)查找文件,并且有這樣做的需要。下面的部分展示了如何使用其他可用的方式。

此外,當(dāng)按文件大小、組、索引節(jié)點(diǎn)等條件來(lái)搜索文件時(shí),你需要確認(rèn)找到的文件與你要查找的文件是否相匹配。使用 -ls 選項(xiàng)來(lái)顯示細(xì)節(jié)是非常有用。

通過大小查找文件

按大小查找文件需要使用 -size 選項(xiàng)并且對(duì)相應(yīng)規(guī)范使用一點(diǎn)技巧。例如,如果你指定 -size 189b,你將找到 189 個(gè)塊大小的文件,而不是 189 個(gè)字節(jié)。(LCTT 譯注:如果不跟上單位,默認(rèn)單位是 b。一個(gè)塊是 512 個(gè)字節(jié)大小,不足或正好 512 個(gè)字節(jié)將占據(jù)一個(gè)塊。)對(duì)于字節(jié),你需要使用 --size 189c(字符)。而且,如果你指定 --size 200w ,你將會(huì)找到 200 個(gè)“word”的文件——以“雙字節(jié)增量”為單位的字,而不是“我們互相談?wù)摰哪切┦虑?rdquo;中的單詞。你還可以通過以千字節(jié)(k)、兆字節(jié)(M)和千兆字節(jié)(G)為單位提供大小來(lái)查找文件。(LCTT 譯注:乃至還有 T、P

大多數(shù)情況下,Linux 用戶會(huì)搜索比選定大小要大的文件。例如,要查找大于 1 千兆字節(jié)的文件,你可以使用這樣的命令,其中 +1G 表示“大于 1 千兆字節(jié)”:

  1. $ find -size +1G -ls 2>/dev/null
  2. 787715 1053976 -rw-rw-r-- 1 shs shs 1079263432 Dec 21 2018 ./backup.zip
  3. 801834 1052556 -rw-rw-r-- 1 shs shs 1077809525 Dec 21 2018 ./2019/hold.zip

通過索引節(jié)點(diǎn)號(hào)查找文件

你可以通過用于維護(hù)文件元數(shù)據(jù)(即除文件內(nèi)容和文件名之外的所有內(nèi)容)的索引節(jié)點(diǎn)來(lái)查找文件。

  1. $ find -inum 919674 -ls 2>/dev/null
  2. 919674 4 -rw-rw-r-- 1 shs shs 512 Dec 27 15:25 ./bin/my.log

查找具有特定文件所有者或組的文件

按所有者或組查找文件也非常簡(jiǎn)單。這里我們使用 sudo 來(lái)解決權(quán)限問題。

  1. $ sudo find /home -user nemo -name "*.png" -ls
  2. 1705219 4 drwxr-xr-x 2 nemo nemo 4096 Jan 28 08:50 /home/nemo/Pictures/me.png

在下面這個(gè)命令中,我們尋找一個(gè)被稱為 admins 的多用戶組擁有的文件。

  1. # find /tmp -group admins -ls
  2. 262199 4 -rwxr-x--- 1 dory admins 27 Feb 16 18:57 /tmp/testscript

查找沒有所有者或組的文件

你可以使用如下命令所示的 -nouser 選項(xiàng)來(lái)查找不屬于當(dāng)前系統(tǒng)上的任何用戶的文件。

  1. # find /tmp -nouser -ls
  2. 262204 4 -rwx------ 1 1016 1016 17 Feb 17 16:42 /tmp/hello

請(qǐng)注意,該列表顯示了舊用戶的 UID 和 GID,這清楚地表明該用戶未在系統(tǒng)上定義。這種命令將查找?guī)粢褟南到y(tǒng)中刪除的用戶創(chuàng)建在主目錄之外的文件,或者在用戶帳戶被刪除后而未被刪除的主目錄中創(chuàng)建的文件。類似地,-nogroup 選項(xiàng)也會(huì)找到這樣的文件,尤其是當(dāng)這些用戶是相關(guān)組的唯一成員時(shí)。

按上次更新時(shí)間查找文件

在此命令中,我們?cè)谔囟ㄓ脩舻闹髂夸浿胁檎疫^去 24 小時(shí)內(nèi)更新過的文件。sudo 用于搜索另一個(gè)用戶的主目錄。

  1. $ sudo find /home/nemo -mtime -1
  2. /home/nemo
  3. /home/nemo/snap/cheat
  4. /home/nemo/tryme

按上次更改權(quán)限的時(shí)間查找文件

-ctime 選項(xiàng)可以幫助你查找在某個(gè)參考時(shí)間范圍內(nèi)狀態(tài)(如權(quán)限)發(fā)生更改的文件。以下是查找在最后一天內(nèi)權(quán)限發(fā)生更改的文件的示例:

  1. $ find . -ctime -1 -ls
  2. 787987 4 -rwxr-xr-x 1 shs shs 189 Feb 11 07:31 ./tryme

請(qǐng)記住,顯示的日期和時(shí)間只反映了對(duì)文件內(nèi)容進(jìn)行的最后更新。你需要使用像 stat 這樣的命令來(lái)查看與文件相關(guān)聯(lián)的三個(gè)狀態(tài)(文件創(chuàng)建、修改和狀態(tài)更改)。

按上次訪問的時(shí)間查找文件

在這個(gè)命令中,我們使用 -atime 選項(xiàng)查找在過去兩天內(nèi)訪問過的本地 pdf 文件。

  1. $ find -name "*.pdf" -atime -2
  2. ./Wingding_Invites.pdf

根據(jù)文件相對(duì)于另一個(gè)文件的時(shí)間來(lái)查找文件

你可以使用 -newer 選項(xiàng)來(lái)查找比其他文件更新的文件。

  1. $ find . -newer dig1 -ls
  2. 786434 68 drwxr-xr-x 67 shs shs 69632 Feb 16 19:05 .
  3. 1064442 4 drwxr-xr-x 5 shs shs 4096 Feb 16 11:06 ./snap/cheat
  4. 791846 4 -rw-rw-r-- 1 shs shs 649 Feb 13 14:26 ./dig

沒有相應(yīng)的 -older 選項(xiàng),但是你可以用 ! -newer (即更舊)得到類似的結(jié)果,它們基本上一樣。

按類型查找文件

通過文件類型找到一個(gè)文件,你有很多選項(xiàng)——常規(guī)文件、目錄、塊和字符文件等等。以下是文件類型選項(xiàng)列表:

  1. b 塊特殊文件(緩沖的)
  2. c 字符特殊文件(無(wú)緩沖的)
  3. d 目錄
  4. p 命名管道(FIFO
  5. f 常規(guī)文件
  6. l 符號(hào)鏈接
  7. s 套接字

這里有一個(gè)尋找符號(hào)鏈接的例子:

  1. $ find . -type l -ls
  2. 805717 0 lrwxrwxrwx 1 shs shs 11 Apr 10 2019 ./volcano -> volcano.pdf
  3. 918552 0 lrwxrwxrwx 1 shs shs 1 Jun 16 2018 ./letter -> pers/letter2mom

限制查找的深度

-mindepth-maxdepth 選項(xiàng)控制在文件系統(tǒng)中搜索的深度(從當(dāng)前位置或起始點(diǎn)開始)。

  1. $ find -maxdepth 3 -name "*loop"
  2. ./bin/save/oldloop
  3. ./bin/long-loop
  4. ./private/loop

查找空文件

在這個(gè)命令中,我們尋找空文件,但不進(jìn)入目錄及其子目錄。

  1. $ find . -maxdepth 2 -empty -type f -ls
  2. 917517 0 -rw-rw-r-- 1 shs shs 0 Sep 23 11:00 ./complaints/newfile
  3. 792050 0 -rw-rw-r-- 1 shs shs 0 Oct 4 19:02 ./junk

按權(quán)限查找文件

你可以使用 -perm 選項(xiàng)查找具有特定權(quán)限集的文件。在下面的示例中,我們只查找常規(guī)文件(-type f),以避免看到符號(hào)鏈接,默認(rèn)情況下符號(hào)鏈接被賦予了這種權(quán)限,即使它們所引用的文件是受限的。

  1. $ find -perm 777 -type f -ls
  2. find: ‘./.dbus’: Permission denied
  3. 798748 4 -rwxrwxrwx 1 shs shs 15 Mar 28 2019 ./runme

使用查找來(lái)幫助你刪除文件

如果使用如下命令,你可以使用 find 命令定位并刪除文件:

  1. $ find . -name runme -exec rm {} \;

{} 代表根據(jù)搜索條件找到的每個(gè)文件的名稱。

一個(gè)非常有用的選項(xiàng)是將 -exec 替換為 -ok。當(dāng)你這樣做時(shí),find 會(huì)在刪除任何文件之前要求確認(rèn)。

  1. $ find . -name runme -ok rm -rf {} \;
  2. < rm ... ./bin/runme > ?

刪除文件并不是 -ok-exec 能為你做的唯一事情。例如,你可以復(fù)制、重命名或移動(dòng)文件。

確實(shí)有很多選擇可以有效地使用 find 命令,毫無(wú)疑問還有一些在本文中沒有涉及到。我希望你已經(jīng)找到一些新的,特別有幫助的。 

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2019-02-26 10:15:13

GitHub 開源代碼

2018-05-09 12:27:34

Linux命令尋找文件

2021-02-03 21:24:42

Joplin筆記

2018-05-28 11:10:08

Linux命令IP地址

2021-04-06 14:04:40

合成身份欺詐攻擊網(wǎng)絡(luò)安全

2015-08-27 16:55:21

2011-09-02 17:40:11

iPhone應(yīng)用SoundHound歌曲

2023-10-08 08:51:14

搜索與查詢結(jié)構(gòu)化查詢

2009-08-03 09:20:18

find命令詳解find命令linux find命

2022-07-06 23:34:00

LinuxIP

2021-02-05 10:27:25

Windows 10Windows微軟

2025-05-27 08:40:00

2009-08-03 10:12:37

find命令詳解find命令linux

2021-12-27 11:29:17

AI集成程序

2012-05-11 10:07:55

Linuxfind

2015-07-17 14:28:41

金融服務(wù)華為

2022-11-16 13:16:23

微軟Windows

2019-12-10 10:03:18

Linux命令行工具

2022-05-10 08:08:01

find命令Linux

2010-03-09 13:54:05

Linux find命
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)