![删除名称中具有特定模式的文件](https://linux22.com/image/34864/%E5%88%A0%E9%99%A4%E5%90%8D%E7%A7%B0%E4%B8%AD%E5%85%B7%E6%9C%89%E7%89%B9%E5%AE%9A%E6%A8%A1%E5%BC%8F%E7%9A%84%E6%96%87%E4%BB%B6.png)
我想删除所有包含两个数字和一个点的文件开始他们的名字
例如:
01. abc
02. xyz
答案1
递归地:
find . -type f -name '[0-9][0-9].*' -delete
需要 GNU 查找,或者:
find . -type f -name '[0-9][0-9].*' -exec rm {} \;
答案2
rm [0-9][0-9].*
将对当前目录中的文件执行此操作(不带引号 - 您想来匹配文件)。不需要.
转义,因为这是一个 shell glob,而不是正则表达式(如果它是正则表达式,那就是通配符)。
如果您希望递归地执行此操作,find
这可能是您最好的选择。
答案3
使用“-r”选项递归删除文件
rm -rf name_pattern*
eg : rm -rf dept*