我最近正在使用 Ubuntu,我被要求删除开头带有数字的文件。
如何从当前目录中删除前三个字符带有数字的普通文件?
由于没有其他人费心发布这个,
rm [0-9][0-9][0-9]*
首先:尝试此类删除命令时要小心!尝试在包含测试文件或备份良好的文件的目录中运行。
你可以从shell尝试这样的事情:
find . -regex './[0-9]{3}.*' -exec 'rm {}' ;
为了进行调试,请先尝试在没有 rm
-命令的情况下运行它,列出将要删除的文件:
find . -regex './[0-9]{3}.*'
你可能不得不转义大括号 - 至少我在 FreeBSD 中不得不使用 zsh-shell:
find . -regex './[0-9]{3}.*'
像这样的东西怎么样
ls | egrep '^[0-9]{3}' | xargs rm
ls
列出所有文件,egrep
筛选列表,使其仅包含以三位数字开头的文件名,xargs
rm
应用于egrep
允许通过的每个文件名。