在BASH中,查找匹配不同名称的文件夹
In BASH, find folders that match different names
我想找到所有匹配不同名称且早于 X 天的子文件夹
我试过只有一个名字:
find my_folder -maxdepth 3 -type d -name "*mine*" -mtime +30
这没问题。我不知道如何扩展它以匹配具有 "test" 和 "older" 名称的文件夹
您可以使用 -o
对条件进行 OR 运算,并确保在 ORed 指令两边使用括号:
find my_folder -maxdepth 3 -type d \( -name "*mine*" -o -name "*test*" -o -name "*older*" \) -mtime +30
另一种选择是使用 -regex
选项:
find my_folder -regextype posix-extended -maxdepth 3 -type d -regex '.*(minetest|older).*" -mtime +30
我想找到所有匹配不同名称且早于 X 天的子文件夹
我试过只有一个名字:
find my_folder -maxdepth 3 -type d -name "*mine*" -mtime +30
这没问题。我不知道如何扩展它以匹配具有 "test" 和 "older" 名称的文件夹
您可以使用 -o
对条件进行 OR 运算,并确保在 ORed 指令两边使用括号:
find my_folder -maxdepth 3 -type d \( -name "*mine*" -o -name "*test*" -o -name "*older*" \) -mtime +30
另一种选择是使用 -regex
选项:
find my_folder -regextype posix-extended -maxdepth 3 -type d -regex '.*(minetest|older).*" -mtime +30