如何像專業
使用-NAME用於病例敏感性和-Iname,用於對病例不敏感的文件搜索。 2。用-Type(F,D,L)按類型進行過濾,尺寸(100m,-50k),以及以-mtime(-7,30)或-mmin進行修改時間。 3。使用{} \; exec在發現的文件上執行操作或{}提高效率,並首先使用Echo進行測試。 4。使用和(暗示)或(-o),不是(!或-not)和括號\(\)組合條件。 5。通過避免使用權限錯誤(2>/dev/null),以-maxdepth限制深度以及在特定目錄中啟動搜索來進行優化。現實世界中的示例包括壓縮舊日誌,查找大目錄,刪除空文件以及檢測SUID文件以進行安全性,所有這些都證明了Mastering如何在Linux環境中提高效率和控制。
Linux中的find
命令是直接從終端搜索和管理文件的最強大工具之一。儘管基本用法很簡單,但掌握find
解鎖的高級文件操作,以節省時間並提高生產力。這是使用“ Pro這樣的find
的方法 - 超越基本搜索到現實世界中有效的工作流程。

1。按名稱搜索文件(對病例敏感和不敏感)
find
最常見的用途是按名稱找到文件。
查找/路徑/到/搜索-Name“ filename.txt”
這將搜索完全名稱filename.txt
的文件。搜索對病例敏感。

對於不敏感的搜索,請使用-iname
:
查找 /home -Iname“*.txt”
這會在/home
下找到所有.txt
文件,而不管它們是否.TXT
, .Txt
,等。

?提示:始終用通配符(
*
?
)引用圖案,以防止外殼過早擴展它們。
2。按文件類型,大小和修改時間過濾時間
專業用戶將過濾器結合起來以精確縮小結果。
按文件類型
使用-type
指定您要尋找的文件:
-
f
=常規文件 d
=目錄l
=符號鏈接
查找 /var /log -type f -name“*.log”
僅查找以.log
結尾的常規文件。
按大小
使用-size
根據大小搜索文件:
-
100M
→大於100兆字節 -50K
→小於50千數1G
→正好1千兆字節(很少使用)
查找〜 -type f -size 1g
在主目錄中找到大於1GB的所有文件。
通過修改時間
使用-mtime
查找修改的n天之前:
-
-mtime -7
→在過去的7天內更改 -mtime 30
→不變超過30天
查找 /var /log -type f -name“*.log” -mtime 30
找到超過30天的日誌文件 - 可用於清理。
您也可以使用-mmin
幾分鐘(非常適合監視最近的更改):
尋找 。 - 型f -mmin -5
在當前目錄的最後5分鐘內查找修改的文件。
3。使用-exec
在發現的文件上執行命令
find
的S Superpowers之一是使用-exec
在匹配的文件上運行動作。
安全刪除文件
而不是風險的rm *.log
(可能會因文件太多而失敗),請使用:
查找 /tmp -name“*.tmp” -type f -exec rm -f {} \;
-
{}
是每個發現的文件的佔位符。 -
\;
結束命令(每個文件運行一次)。
為了通過許多文件進行更好的性能,請使用
而不是\;
:
查找 /tmp -name“*.tmp” -type f -exec rm -f {}
這將多個文件傳遞給單個rm
調用 - 更快,更安全。
更改許可或所有權
修復配置文件上的權限:
find /home -name“*.conf” -type f -exec chmod 644 {} \;
或更改所有權:
查找 /opt /opt /apps -type d -name“ logs” -exec chown admin:admin {} \;
在運行前預覽
始終先測試!用echo
替換動作:
尋找 。 -name“*.bak” -exec Echo“將刪除:{}” \;
這顯示了在進行更改之前會受到影響的內容。
4。結合條件與和,或不
find
支持邏輯運算符以構建複雜的查詢。
並在封閉表情時隱含:
查找 /tmp -type f -name“*.tmp” -mtime 7
意思:常規文件和名稱以
.tmp
結束,並在7天前修改。或使用
-o
:尋找 。 -Name“*.txt” -o -Name“*.log”
查找
.txt
或.log
文件。不使用
-not
或!
(逃脫!
在某些砲彈中):尋找 。 -type f! -Name“*.pdf”
所有不是PDF的文件。
?在組條件下使用括號。用
\
或引用逃脫它們:尋找 。 \(-name“*.txt” -o -name“*.md” \)-mtime -7在過去7天內查找
.txt
或.md
文件。
5。優化並避免常見的陷阱
甚至專業人士都會犯錯。這是保持敏銳的方法:
避免權限噪聲:搜索系統時重定向錯誤:
查找/-Name“ necret.conf” 2>/dev/null
抑制“許可拒絕”垃圾郵件。
開始特定:除非有必要
/
否則請勿搜索。縮小路徑:查找〜/documents -name“*.odt”
使用
-maxdepth
限制遞歸:查找 /etc -maxDepth 2 -name“*.conf”
僅搜索
/etc
和立即的子目錄。不要解析
ls
輸出:find
輸出乾淨的路徑 - 非常適合腳本。
獎金:現實世界的專業示例
這是您實際使用的一些實用的單線:
查找並壓縮舊日誌:
查找 /var /log -name“*.log” -mtime 30 -exec gzip {} \;
找到大型目錄:
查找 /home -type d -exec du -sh {} \; |排序-hr |頭-10
查找空文件並刪除它們:
尋找 。 -type f -empty -delete
查找具有SUID位設置(安全檢查)的文件:
查找 /-type f -perm /4000 2> /dev /null
掌握
find
並不是要記住所有選項,而是要了解如何鏈條條件和行動有效地解決實際問題。一旦將名稱,類型,時間,尺寸和-exec
組合在一起,您就會想知道沒有它的管理方式。基本上,開始小,經常測試並積累。起初,該命令看起來很神秘,但很快就變成了第二天性。
以上是如何像專業的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

想知道Linux系統信息和版本,可通過以下步驟操作:1.使用lsb_release-a查看發行版信息;2.查看/etc/os-release文件獲取版本詳情;3.用uname-r或uname-mrs確認內核版本及系統架構;4.運行lscpu、free-h或dmidecode(需root權限)獲取硬件信息。上述方法適用於不同發行版,部分命令可能需安裝或權限調整。

確認目標硬盤設備名(如/dev/sda),避免誤刪系統盤;2.使用sudoddif=/dev/zeroof=/dev/sdXbs=1Mstatus=progress全盤覆寫零值,適用於大多數場景;3.敏感數據使用sudoshred-v-n3/dev/sdX進行三次隨機數據覆寫,確保無法恢復;4.可選執行sudobadblocks-wsv/dev/sdX做破壞性寫入測試;最後用sudohexdump-C/dev/sdX|head驗證是否全為零,完成安全擦除。

cronisusedforpreciseschedulingonalways-onsystems,whileanacronensuresperiodictasksrunonsystemsthataren'tcontinuouslypowered,suchaslaptops;1.Usecronforexacttiming(e.g.,3AMdaily)viacrontab-ewithsyntaxMINHOURDOMMONDOWCOMMAND;2.Useanacronfordaily,weekly,o

在Linux上安裝軟件主要有三種方法:1.使用包管理器,如apt、dnf或pacman,通過更新源後執行install命令安裝,例如sudoaptinstallcurl;2.對於.deb或.rpm文件,分別使用dpkg或rpm命令安裝,並在需要時修復依賴;3.使用snap或flatpak跨平台安裝應用,如sudosnapinstall軟件名,適用於追求版本更新的用戶,推薦優先使用系統自帶包管理器以獲得更好的兼容性和性能。

ChoosePop!_OS,Ubuntu,NobaraLinux,orArchLinuxforoptimalgamingperformancewithminimaloverhead.2.InstallofficialNVIDIAproprietarydriversforNVIDIAGPUs,ensureup-to-dateMesaandkernelversionsforAMDandIntelGPUs.3.EnabletheperformanceCPUgovernor,usealow-latenc

Linux適合老舊硬件、安全性高、可定制,但軟件兼容性弱;Windows軟件豐富、易用,但資源佔用高。 1.性能上,Linux輕量高效,適合舊設備;Windows對硬件要求高。 2.軟件上,Windows兼容性更廣,尤其專業工具和遊戲;Linux需借助工具運行部分軟件。 3.安全上,Linux權限管理更嚴格,更新便捷;Windows雖有防護但仍易受攻擊。 4.使用難度上,Linux學習曲線陡峭;Windows操作直觀。根據需求選擇:重性能與安全選Linux,重兼容與易用選Windows。

timessynchronizationiscroucialforsystemriabilitile andsecurityBecurityBecurityBecurityTimecauseslogConfusion,SecurityFailures,不正確的SCHEDULEDTASKS,and distributedSystementerors; 1.CheckntpStatusptatususistimeDimeDimeDatectlstatectlstatustatustoconFirmSynChronChronChronChronizationServiciative and servicivity; 2

安裝Git:在服務器上通過包管理器安裝Git並驗證版本;2.創建專用Git用戶:使用adduser創建git用戶並可選地限制其shell訪問;3.配置開發者SSH訪問:為git用戶設置.ssh目錄和authorized_keys文件,添加開發者的公鑰;4.創建裸倉庫:在服務器上初始化bare倉庫並設置正確所有權;5.客戶端克隆與推送:開發者通過SSH克隆倉庫、提交更改並成功推送代碼,完成私有Git服務器搭建。
