使用rm *text*
您可以删除所有包含特定字符串的文件。我将如何使它删除除具有特定通配符的文件之外的每个文件?
我尝试使用我发现的其他东西,例如:
find . -type f -print0 | xargs --null grep -Z -L 'text' | xargs --null rm
或者
grep -r -L -Z 'text' . | xargs --null rm
但这些不起作用。相反,他们正在删除给定目录中的所有文件。
我怎么能这样做?
您可以通过启用扩展的 glob 来做到这一点:
shopt -s extglob
现在你可以做例如
ls !(*.pdf)
或者在你的例子中
rm !(*text*)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句