日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

夺命雷公狗---linux NO:17 linux系统查找

發(fā)布時間:2025/5/22 linux 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 夺命雷公狗---linux NO:17 linux系统查找 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

which :?命令是查找命令是否存在,以及命令的存放位置在哪兒。

如果沒有查到他將返回no XXX in (查找過的路徑)....

?

這必須是可執(zhí)行權限的文件,而且必須是存放在上面這些目錄中才可以用查找到的,上面的目錄是以:號進行分隔的。。。

但是如果查找成功他將返回查找到的路徑并且顯示出來。。。

?

?

whereis :?命令只能用于搜索程序名,而且只搜索二進制文件(參數-b)、man說明文件(參數-m)和源代碼文件(參數-s)。如果省略參數,則返回所有信息。

?

第一個框: usr/bin ?這里一般都是防止可執(zhí)行文件的

第二個框: etc 下這李幼斌都是配置文件的

第三個框: ?這里一般都是放置手冊之類的。。

?

如果他是不存在的,那么他會返回如下形式的提示:

?

?

which ?和 ?whereis 的最大區(qū)別是 which 是在指定的地方查找有么有該執(zhí)行文件,whereis ?他則會查找跟您這個名字相關的他都會列出來。

但是whereis ?和 ? locate 在查找的時候都是通過自己的一個DB數據庫來進行查找的,所以很有可能會很多東西都沒有找出來。。。。

?

?

?

locate :命令不是實時查找,所以查找的結果不精確,但查找速度很快。因為它查找的不是目錄,而是一個數據庫(/var/lib/locatedb),這個數據庫中含有本地所有文件信息。Linux系統(tǒng)自動創(chuàng)建這個數據庫,并且每天自動更新一次,所以使用locate命令查不到最新變動過的文件。為了避免這種情況,可以在使用locate之前,先使用updatedb命令,手動更新數據庫。

有可能linux ?上沒安裝,那么首先安裝一下即可:

?

然后再安裝一個 *locate

?

然后再用命令 ?updatedb ? 更新下即可。。

完成后在用locate 搜索下passwd 做實驗。。

這里有點類似模擬查詢的樣子,所以我們來做一個重點向輸出,讓他看起來更美觀一點,如下所示:

?

然后用vim ?對她進行查看

進入的時候是看不到左側的數字的,我們需要先按一個 ? ESC ?鍵, 然后再輸入 ?:set nu 回車即可看到左側的行號信息了。。。

其實locate 更多的是是像模糊查詢。。。。。。

locate和whereis 都是有自己的db庫的。。

?

小結:

which--------查找到的是一些可執(zhí)行的程序

whereis------查到到的都是程序相關的配置文件和幫助信息

locate-------按照匹配度查找,更多的都是模糊信息,比如名字只記得一點點

?

?

?

find:是最常用和最強大的查找命令。它能做到實時查找,精確查找,但速度慢。

由于他和 ? windows ? 下的查找差不多,都是在交換分區(qū)里面進行仔細查找的,所以速度方面可能會比較慢,,所以不是很推薦使用他。

如果直接輸入find 那么他顯示的內容將是很全面的,包括隱藏的內容他都會顯示出來,效果如下所示:

?

所以說在在不用任何關鍵字的前提下他就表示所有的。。。

find的常用場景如下所示:

?

-atime:表示某個文件我在打開(讀取)他的時間。。。

-ctime:狀態(tài)時間,如權限修改,內容更改,寫之類的都是屬于狀態(tài)時間

-mtime:修改時間,如文件名稱修改,文件內容修改他的時間都會發(fā)生變化的

?

使用方法1:

這里的 ?0 ?表示查看24小時內改動過的文件。。。

如果這里的 ?0 ?改成 ? ?5 ?那么他顯示的是前5天我修改過的文件。。

0 是24小時內 ?5 ?是前 ?5 ?天(當天)修改過的內容如此類推。。。

如果我想查看30天之前的:

看到這類似報錯的,其實也不用還怕,因為這臺linux的服務器我是用來做測試的,他也就是剛搭建起來沒多久的。。。。

如果改成 find / mtime +5 ? 那也是行的,代表5天前操作過的文件,5天前至到所有的。。。。。。。。

如果改成 find / mtime -5 ? 那也是行的,代表是5天以內發(fā)生操作的所有文件。。。

如果沒有 ?+ ? ?和 ? - ? 那么只是一天時間內發(fā)生的而已。。。

?atime ?ctime ?mtime ?這三個的用法都是相同的。。。。

?

?

用法2:

查找用戶相關的文件

如果使用 ?find / -user 用戶名,這樣他會在全盤進行搜索的,如過服務器上數據比較多,不支持用這種方法進行搜索

find /home -user ?用戶名,如果使用著用的搜索,那就會快得多了,因為他只需要在一個目錄下搜索而已。。。。。

?

?

find / -nouser:這是查找有沒有一個文件不屬于任何用戶和不屬于任何用戶組的。。。

?

這種方法一般都比較慢。。。

?

?

?

find / -group lisi :這是查找一個用戶組的。

查找一個用戶和查找一個用戶組其實很多時候都是沒什么區(qū)別的,因為用戶組和用戶的名稱是一樣的。。

正常情況下目錄帶task 和 ?fd ?開頭的都不用怎么關心,因為一般都是沒這個目錄的,更多時候說明系統(tǒng)在運行什么東西,但是他沒產生出信息出來。。。。

?

?

如果使用find / -name 文件名,根據文件名稱查找(嚴格區(qū)分大小寫,如果文件名中間有空格,則必須把文件名用雙引號引起來),用法如下所示:

當然如果不想讓他區(qū)分大小寫,那么只需要在name ?前加一個 ? i ? 即可,如 find / -iname 文件名

這個主要是查找全部關鍵字匹配的。。。

?

?

?

?

find /home -type f:這里是查找home目錄下的普通文件,這里的 ?f ? 是文件 ?file ? 的簡寫,用法如下所示:

?

?

?

find的特殊功能。。

比如要查找一個大于或者等于10M的文件

這些在linux里面用的還是比較少的。。。

?

?

如果忘記名字了還可以用*號來進行模糊查詢,如下所示:

?

?

還是那句話,如果能用 which 和 whereis 以及 locate ?能查到能發(fā)就盡量不要使用 ?find ?來查找,因為find ?要讀取硬盤,速度會比較慢。。。。。。。。。

轉載于:https://www.cnblogs.com/leigood/p/7087045.html

總結

以上是生活随笔為你收集整理的夺命雷公狗---linux NO:17 linux系统查找的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。