查找(并删除)名称中不包含某些模式(复数)的所有文件

问题描述 投票:0回答:1

我正在寻找一种简单的方法来查找和删除目录及其所有子目录中名称中不包含某些字符串的所有文件。

我尝试先从 find 命令开始:

find . -type f \! \( -name "TMP_TGL_2" -o -name "PRES_SFC_0" \)

但它似乎并没有排除第二个字符串模式。我怎样才能做到这一点?

linux bash command-line-interface filenames gnu-findutils
1个回答
0
投票

试试这个:

find . -type f ! \( -name "*TMP_TGL_2*" -o -name "*PRES_SFC_0*" \)

模式周围的通配符将确保它们匹配包含这些字符串的文件(否则它们只会匹配名称与字符串相同的文件)。

© www.soinside.com 2019 - 2024. All rights reserved.