linux 查找包含关键字的所有文件并删除该文件。

比如,查找/var/www/html/tom下面的所有包含关键字”abc"的文件,并删除这些文件,批量删除对不起,可能是我说的不清楚,是文件内容包含abc,不是文件名。... 比如,查找/var/www/html/tom下面的所有包含关键字”abc"的文件,并删除这些文件,批量删除
对不起,可能是我说的不清楚,是文件内容包含abc,不是文件名。
展开
 我来答
幻翼高达Zero
2019-08-20 · TA获得超过1.7万个赞
知道答主
回答量:499
采纳率:0%
帮助的人:7.5万
展开全部

1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。

2、在linux命令行下输入shell指令:find . -name "abc*"|xargs rm -rfv。

3、键盘按“回车键”运行shell指令,此时会看到abc开头的abc123.txt和abc6swef.txt都被删除了。

yy_galois
推荐于2017-10-07 · TA获得超过857个赞
知道小有建树答主
回答量:429
采纳率:100%
帮助的人:155万
展开全部
find  /var/www/html/tom -type f  | xargs -n1 -I "ZZZZZ" grep -l "abc" "ZZZZZ" | xargs -n1 -I "XXXXX" rm -f "XXXXX"


其中, ZZZZZ 和 XXXXX 都是临时命名变量,你使用的时候直接这样用就可以。不需要替换成别的字符。


前面2个回答,都是文件名中包含 abc ,而不是文件内容包含abc。所以,我的是正确的。

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zcmsgk
2015-11-17 · 知道合伙人软件行家
zcmsgk
知道合伙人软件行家
采纳数:343 获赞数:784
从事运维工程多年,有丰富的IDC经验,擅长web应用,熟练掌握Linux、windows各种web环境架构,以及软件应用

向TA提问 私信TA
展开全部
我这个方法感觉有点繁琐:

# find . -name \* -type f -print | xargs grep "hostname" | awk -F: '{print $1}' | xargs rm -rf

说明:查找当前目录下包含hostname的文件,并删除!
应该还有更简便的方法!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cl0554
2013-08-16 · TA获得超过617个赞
知道小有建树答主
回答量:993
采纳率:0%
帮助的人:389万
展开全部
find /var/www/html/tom/* -name "*abc*" -exec rm -rf {} \;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式