如何使用“rm”删除带有“:”的文件?

如何使用“rm”删除带有“:”的文件?

我正在使用 Ubuntu 10.04,我有一个包含一堆文件的目录。我们不久前更改了文件的命名方案,现在我想删除所有旧文件。

新名称方案:December_12_2010.zip

旧名称方案:December_11_2010_17:54:18_map.zip

我查看了正则表达式,想看看如何使用它们,但我搞不懂。我有限的知识不足以让我找到正确的组合。我看到了“:”,并认为删除文件的最佳方法是说“删除所有带有‘:’的文件”,但没有成功。我需要一些指导!

答案1

试试看rm *:*。这对我来说确实有效,如果它对你不起作用,那么提供错误消息的详细信息会有所帮助。

如果每天只有一个文件,也可以重命名文件。自动执行该操作不会是一个重大挑战。

答案2

如果文件真的您应该使用以下一组find来代替:

find -name '*:*' -delete

答案3

如果你使用正则表达式,那么这个应该有效:-

find . -regex '.*/*[0-9][0-9]:[0-9][0-9]:[0-9][0-9]*' -exec rm -fv '{}' \;

相关内容