目錄
2。按文件類型,大小和修改時間過濾時間
按文件類型
按大小
通過修改時間
3。使用-exec在發現的文件上執行命令
安全刪除文件
更改許可或所有權
在運行前預覽
4。結合條件與和,或不
5。優化並避免常見的陷阱
獎金:現實世界的專業示例
首頁 系統教程 Linux 如何像專業

如何像專業

Aug 20, 2025 pm 07:06 PM

使用-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中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

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

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

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

熱門話題

PHP教程
1582
276
如何查看我的Linux系統信息和版本? 如何查看我的Linux系統信息和版本? Jul 26, 2025 am 02:59 AM

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

如何在Linux上安全刪除硬盤驅動器 如何在Linux上安全刪除硬盤驅動器 Jul 24, 2025 am 12:08 AM

確認目標硬盤設備名(如/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驗證是否全為零,完成安全擦除。

如何使用Cron和Anacron在Linux上安排任務 如何使用Cron和Anacron在Linux上安排任務 Aug 01, 2025 am 06:11 AM

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

如何使用終端在Linux上安裝軟件? 如何使用終端在Linux上安裝軟件? Aug 02, 2025 pm 12:58 PM

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

Linux上高性能遊戲的最終指南 Linux上高性能遊戲的最終指南 Aug 03, 2025 am 05:51 AM

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

Linux與Windows的主要利弊是什麼? Linux與Windows的主要利弊是什麼? Aug 03, 2025 am 02:56 AM

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

時間同步在Linux上與NTP的重要性 時間同步在Linux上與NTP的重要性 Aug 01, 2025 am 06:00 AM

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

在Linux計算機上設置GIT服務器 在Linux計算機上設置GIT服務器 Jul 28, 2025 am 02:47 AM

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

See all articles