LINUX 使用批量删除文件的几种方法

如何用正则表达式批量删除文件
我们都知道 linux 命令行 使用 rm 可以删除文件, 但是当有时候想要批量删除一些自动生成的文件(照片,音乐)等等自动生成命名的文件时, 我们需要怎么办呢, 下面是两种办法

  1. 通过通配符批量删除文件

例如我的文件夹里现在有这么几个文件, 我想要把他们一次性删除, 可以在当前文件夹内执行如下命令

$ rm test-{1…20}.txt
1
这样就可以全部删除了!

  1. 使用正则表达式批量删除文件
    正则表达式删除的命令稍微有点不一样, 因为 rm 默认是不支持正则表达式的, 所以我们要用支持正则表达式的 grep 和 命令来帮忙。

ls | grep -P “test-[1-2]{0,1}[0-9].jpg” | xargs -d"\n" rm
1
这行命令 通过 ls 拿到当前文件夹内所有文件并通过 管道符 “|” 传给 grep 用正则来过滤, 最后通过 xargs 命令来二次过滤掉换行符, 然后执行 rm 函数来批量删除, 这样就完成了!
————————————————

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐