Find

在與另一個模式匹配的目錄中查找匹配模式的文件

  • May 11, 2022

在我求助於編寫 Python 來執行此操作之前 - 在 bash 中必須有一種使用 find 或類似工具的方法。我想搜尋一棵樹,並查找名稱與模式匹配的所有文件,這些文件位於與另一個模式匹配的目錄中。例如:foo_[0-9][0-9]在一個名為bar_[0-9]. 所以,我想找到所有這些文件(從目前目錄):

a/b/bar_4/foo_02
b/bar_0/foo_03
a/b/c/d/bar_8/foo_88

謝謝。

對於這種情況,您可以使用該-path <pattern>選項,類似於以下-name選項find

find . -path "*bar_[0-9]/foo_[0-9][0-9]"

在 bash(和其他具有類似功能的 shell)中,您可以使用globstar

shopt -s globstar nullglob

printf '%s\n' **/bar_[0-9]/foo_[0-9][0-9]

引用自:https://unix.stackexchange.com/questions/702210