隨筆6 Linux探索 常用命令之檔案查詢

2021-10-24 04:45:35 字數 3394 閱讀 1327

find 命令再工作中十分重要,但是這個鬼比較消耗磁碟

1.1 按照大小搜尋
find -size
1.2 按照時間搜尋
find -atime # 按照檔案訪問時間搜尋

find -mtime #按照檔案資料修改時間搜尋

find -ctime # 按照檔案狀態修改時間搜尋

# 查詢五天前修改的檔案  

[root@localhost ~]#

[root@localhost ~]#

[root@localhost ~]#

# 查詢五天內修改的log檔案

[root@localhost data]# find ./ -type f -name "*.log" -mtime -5

# 查詢五天前修改的log檔案

[root@localhost data]# find ./ -type f -name "*.log" -mtime +5

./audit.log

[root@localhost data]#

1.3 按照許可權搜尋
find -perm [許可權模式]

find -perm +[許可權模式]

find -perm -[許可權模式]

1.4 按照所有者和所屬組搜尋(不怎麼用)
find  [目錄] -uid [uid]          # 按照使用者id查詢所屬組是指定使用者id的檔案

find [目錄] -gid [gid] # 按照使用者組id查詢所屬組是指定組id的檔案

find [目錄] -user [user name] # 按照使用者名稱查詢所屬使用者是指定使用者的檔案

find [目錄] -group [group name] # 按照組名查詢所屬組是指定使用者組的檔案

find [目錄] -nouser(常用) # 查詢沒有所有者的檔案

1.5 按照檔案型別搜尋
find  [目錄] -type d  #查詢目錄

find [目錄] -type f #查詢普通檔案

find [目錄] -type l #查詢軟連線檔案

1.6 按照名稱搜尋
find  [目錄] -name [name]
1.7 邏輯運算子
find  [目錄] [condition 1] -a [condition 2]  #邏輯與

find [目錄] [condition 1] -o [condition 2] # 邏輯或

find [目錄] [condition 1] -not [condition 2] #邏輯非

find [目錄] ! [condition 1] # 取反 == -not (左右兩邊都有空格)

1.8 其他選項
find [目錄] [選項]  搜尋內容 -exec 命令2 {} \;

將find 命令的結果交給 "-exec" 呼叫的命令2來處理 "{}" 就是代表find命令的查詢結果

1.9 實用組合命令

find /home -name a.txt

find /hom -user hello

find / -size +nm

find / -size -nm

find / -size n

find / -name *.txt

1.10 利用xargs結合刪除命令使用

統計檢視

./temp4/test.text

./te***/test.text

./temp1/test.text

./temp2/test.text 刪除

統計檢視

you are welcome

you are welcome

you are welcome

you are welcome

you are welcome

[root@localhost ~]#

locate 是基於資料庫的搜尋

優點: 按照資料庫搜尋,搜尋速度快,消耗資源小. 資料庫位置 /var/lib/mlocate/mlocate.db

缺點: 只能按照檔名來搜尋檔案,而不能執行更複雜的搜尋

lsof命令用於檢視你程序開打的檔案,開啟檔案的程序,程序開啟的埠(tcp、udp)。找回/恢復刪除的檔案。是十分方便的系統監視工具,因為lsof命令需要訪問核心記憶體和各種檔案,所以需要root使用者執行。

在linux環境下,任何事物都以檔案的形式存在,通過檔案不僅僅可以訪問常規資料,還可以訪問網路連線和硬體。所以如傳輸控制協議 (tcp) 和使用者資料報協議 (udp) 套接字等,系統在後台都為該應用程式分配了乙個檔案描述符,無論這個檔案的本質如何,該檔案描述符為應用程式與基礎作業系統之間的互動提供了通用介面。因為應用程式開啟檔案的描述符列表提供了大量關於這個應用程式本身的資訊,因此通過lsof工具能夠檢視這個列表對系統監測以及排錯將是很有幫助的。

安裝

yum install lsof
選項

-a:列出開啟檔案存在的程序

-c《程序名》:列出指定程序所開啟的檔案

-g:列出gid號程序詳情

-d《檔案號》:列出占用該檔案號的程序

+d《目錄》:列出目錄下被開啟的檔案

+d《目錄》:遞迴列出目錄下被開啟的檔案

-n《目錄》:列出使用nfs的檔案

-i《條件》:列出符合條件的程序。(4、6、協議、:埠、 @ip )

-p《程序號》:列出指定程序號所開啟的檔案

-u:列出uid號程序詳情

-h:顯示幫助資訊

-v:顯示版本資訊

示例

[root@localhost ~]# lsof -i :22

command pid user fd type device size/off node name

sshd 1081 root 3u ipv4 20547 0t0 tcp *:ssh (listen)

sshd 1081 root 4u ipv6 20556 0t0 tcp *:ssh (listen)

sshd 2050 root 3u ipv4 30730 0t0 tcp localhost.localdomain:ssh->192.168.207.1:49440 (established)

6 Linux之常用命令

一,基本知識 1,linux發行版本 ubuntu,紅帽,centos 2,linux命令區分大小寫 3,以檔案形式儲存,不靠副檔名 區分檔案型別 4,命令之間有空格 二,常用基礎命令 1,su 切換使用者,root為系統預設的超級管理員,另外有乙個普通使用者為安裝系統時設定的 2,ifconfig...

隨筆7 Linux探索 常用命令之文字操作

分行顯示檔案分螢幕顯示檔案常用互動命令介紹 常用引數說明 示例 cat n test.txt顯示檔案頭部的n行,預設10 生成測試資料 root localhost file ll d list.log root localhost file cat list.log lrwxrwxrwx.1 ro...

隨筆9 Linux探索 常用命令之檔案與目錄

pwd普通手法ls a ls d ls h ls i ls l實用命令組合 統計 snow資料夾下面的檔案個數 ls l snow grep wc l統計 snow資料夾下目錄的個數 ls l snow grep d wc l統計 snow資料夾下檔案的個數,包括子資料夾裡面的檔案 ls lr sn...