0

我最近正在使用 Ubuntu,我被要求删除开头带有数字的文件。

如何从当前目录中删除前三个字符为数字的普通文件?

4

3 回答 3

5

由于没有其他人费心发布此信息,

rm [0-9][0-9][0-9]*
于 2012-09-25T05:58:29.510 回答
3

首先:尝试此类删除命令时要小心!尝试在包含测试文件或备份良好的文件的目录中运行。

你可以从 shell 尝试这样的事情:

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

要进行调试,请先尝试在不使用 - 命令的情况下运行它rm,列出将被删除的文件:

find . -regex './[0-9]{3}.*'

您可能必须转义花括号 - 至少我必须在 FreeBSD 中使用 zsh-shell:

find . -regex './[0-9]\{3\}.*'
于 2012-09-25T04:30:36.340 回答
1

像这样的东西怎么样

ls | egrep '^[0-9]{3}' | xargs rm

ls列出所有文件,egrep过滤列表以使其仅包含以三位数字开头的文件名,并且适用xargs于允许通过rm的每个文件名。egrep

于 2012-09-25T05:44:48.510 回答