遞歸搜尋特定文件內但僅在特定資料夾中的特定文本

遞歸搜尋特定文件內但僅在特定資料夾中的特定文本

我有一個包含大量資料夾和文件的嵌套資料夾結構。

如何在檔案內部搜尋模式,例如“sampletext”,但前提是檔案名稱與模式相符(例如,僅在具有 .txt 副檔名的檔案內部搜尋),並且最後包含的資料夾名稱必須與另一個模式相符? (例如“數據”)。

我確信我可以編寫一個 shell 腳本來完成它,但我確信存在著聰明的俏皮話,它們會教我新東西!

先致謝

答案1

既然你說你有一個嵌套的資料夾結構,我相信*data*/*txt不會做你需要的事情。我建議

find . –type d –name "*data*" –exec sh –c "grep sampletext /dev/null {}/*.txt" \;

即使它在只有一個檔案的目錄上運行,它/dev/null也會強制顯示檔案名稱。grep.txt

相關內容