missing之找各種東西的技巧---1 查找文件

在我們使用Linux過程中,查找各種文件,代碼的活動佔據很大比重,所以此文專門對查找方法做個總結和羅列。主要分爲三大塊:

  • 查找文件
  • 查找代碼
  • 查找命令

查找文件

一般情況下,最基本的查找命令就是find命令。find很強大,基本可以滿足日常查找文件的需求,他可以遞歸得在某一目錄下按照某種方式去找到符合條件的文件,下面幾個例子基本cover了大多數場景:

  • 從當前目錄開始找到所有名字爲src的目錄
# Find all directories named src
find . -name src -type d
  • 找到所有的路徑只不過一個叫test目錄的python文件
# Find all python files that have a folder named test in their path
find . -path '*/test/*.py' -type f
  • 找到所有修改時間是一天前的文件
# Find all files modified in the last day
find . -mtime -1
  • 找到所有文件大小在500k和10M之間的tar.gz壓縮文件
# Find all zip files with size in range 500k to 10M
find . -size +500k -size -10M -name '*.tar.gz'

find命令除了列出符合條件的文件,還能對其進行一些操作,例子如下:

  • 找到當前目錄下所有的後綴名爲tmp的文件,並且刪除它們。
# Delete all files with .tmp extension
find . -name '*.tmp' -exec rm {} \;
  • 找到所有PNG圖片,並且將他們轉換爲jpg文件。
# Find all PNG files and convert them to JPG
find . -name '*.png' -exec convert {} {}.jpg \;

我們可以看出來:-exec參數後面就是對結果文件列表所做的操作,那個大括號{}就代表前面find命令找到的文件列表。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章