我最近和Ubuntu合作,并且我被要求在开头删除带有数字的文件。
如何从当前目录中删除前三个字符数字的普通文件?
答案 0 :(得分:5)
由于没有其他人费心去发帖,
rm [0-9][0-9][0-9]*
答案 1 :(得分:3)
首先:小心尝试这样的删除命令时!尝试在包含测试文件或备份良好的文件的目录中运行。
你可以从shell尝试这样的东西:
find . -regex './[0-9]{3}.*' -exec 'rm {}' \;
对于调试,请先尝试不使用rm
- 命令运行它,列出将要删除的文件:
find . -regex './[0-9]{3}.*'
你可能不得不逃避花括号 - 至少我必须在FreeBSD中使用zsh-shell:
find . -regex './[0-9]\{3\}.*'
答案 2 :(得分:1)
像
这样的东西ls | egrep '^[0-9]{3}' | xargs rm
ls
列出了所有文件,egrep
会对列表进行过滤,以便它只包含以三位数字开头的文件名,并xargs
对每个文件应用rm
egrep
允许通过的文件名。