linux 删除文件(批量删除文件)

一般的删除文件的操作
  • 删除几个文件 rm 文件1 文件2
  • 删除文件夹下面所有文件 rm * -rf
  • 删除某些固定字母开头的文件 rm xxx*
  • 删除一类文件 rm *.txt
批量删除文件

首先查找我们要删除的某类批量的文件:
find . -maxdepth 1 -regex ".*ws.*"
maxdepth参数为1表示只在当前目录查找,不递归查找子目录
regex参数是正则表达式
上面的命令表示查找所有文件名中含有“ws”的文件。
批量删除上面查找到的文件:
find . -maxdepth 1 -regex ".*ws.*" | xargs rm -rf
xargs是把前面的输出作为后面的参数,如果多行输出,就多次执行后面的命令
有的linux系统支持的regex正则表达式不一样,可以使用下面的方式替换
find . -maxdepth 1 -name "*.c" | xargs rm -rf
还有使用下面的命令也可以:
find . -maxdepth 1 -regex ".*ws.*" -exec rm -rf {} \;

参考:https://www.cnblogs.com/shengulong/p/6742027.html
https://blog.csdn.net/weixin_41076809/article/details/79986454

  • 15
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux系统中,要批量删除文件可以使用一些命令行工具来实现,以下是几种常用的方法: 1. 使用rm命令 rm命令是Linux系统中最常见的删除文件命令,它可以删除单个文件或一个目录及其所有子目录和文件。要批量删除多个文件,只需在rm命令后面依次列出要删除文件名即可。例如: ``` rm file1.txt file2.txt file3.txt ``` 这条命令将同时删除file1.txt、file2.txt和file3.txt三个文件。 2. 使用find命令 find命令可以在指定目录下搜索文件,并且可以使用-exec选项来在搜索结果中执行一个指定的命令操作。要批量删除多个文件,可以使用find命令搭配-exec选项来实现。例如: ``` find . -name "*.txt" -type f -exec rm {} \; ``` 这条命令将删除当前目录下所有扩展名为.txt的文件。其中,-name选项指定要搜索的文件名模式,-type选项指定搜索结果为文件而不是目录,-exec选项指定执行的命令为rm,{}表示搜索结果中的每个文件名,\;表示命令结束符。 3. 使用xargs命令 xargs命令可以从标准输入中读取一行行的文本,并将其转换为命令行参数传递给一个指定的命令执行。要批量删除多个文件,可以使用find命令搜索文件后使用xargs命令来批量删除。例如: ``` find . -name "*.txt" -print0 | xargs -0 rm ``` 这条命令将删除当前目录下所有扩展名为.txt的文件。其中,-print0选项指定以null字符分隔搜索结果中的每个文件名,-0选项指定以null字符分隔xargs命令输入的参数,rm命令将作用于搜索结果中的所有文件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值