Regex 如何指定“删除名为”的子目录;abc";或;def";在linux中使用find

Regex 如何指定“删除名为”的子目录;abc";或;def";在linux中使用find,regex,linux,find,Regex,Linux,Find,如果我想从当前目录中删除所有名为“Win32”的子目录(以及子目录等),我会这样做 find . -type d -name Win32 -exec rm -rf {} \; 但是,如果我想删除名为“Win32”或“x64”的子目录,该怎么办?我试过在“-name”之后使用正则表达式,例如 但它不起作用。像这样做: find . -type d \( -name Win32 -o -name x64 \) -exec rm -rf {} \; 使用-o逻辑组合器:查找-键入d-名称Win32

如果我想从当前目录中删除所有名为“Win32”的子目录(以及子目录等),我会这样做

find . -type d -name Win32 -exec rm -rf {} \;
但是,如果我想删除名为“Win32”或“x64”的子目录,该怎么办?我试过在“-name”之后使用正则表达式,例如

但它不起作用。

像这样做:

find . -type d \( -name Win32 -o -name x64 \) -exec rm -rf {} \;

使用
-o
逻辑组合器:
查找-键入d-名称Win32-o-名称x64


要使用正则表达式,您可以使用-regex选项。

只是想提醒您,如果您更喜欢正则表达式,请小心:

find . -type d -regex '^.*\/\(Win32\|x64\)$'
而我更喜欢像其他用户提到的那样使用-o。)

find . -type d -regex '^.*\/\(Win32\|x64\)$'