shell用A里的文件批量删除B里的文件
定一个文件A.txt里边全是需要黑名单域名用A.TXT匹配母文件B.TXT删除在B里存在的A文件B.TXT文件不能删除替换.最好用sed的方式来实现....
定一个文件A.txt 里边全是需要黑名单域名
用A.TXT 匹配母文件B.TXT 删除在B 里存在的A文件
B.TXT文件不能删除替换. 最好用sed 的方式来实现. 展开
用A.TXT 匹配母文件B.TXT 删除在B 里存在的A文件
B.TXT文件不能删除替换. 最好用sed 的方式来实现. 展开
1个回答
展开全部
不知道这样是不是你要的效果,没使用sed
#!/bin/bash
for i in `cat b.txt`
do
cat a.txt |grep $i
if [ $? -eq 1 ]
then
echo $i >> c.txt
fi
done
就是一个匹配,把不存在的放入c.txt中
追问
可以是可以实现.但是会把母文件B里的大部分文件导入到了C 文件.
是否可以B里grep 出来A 然后删掉
追答
你之前的要求不是“B.TXT文件不能删除替换”
那其实也很简单,替换一下就可以了
#!/bin/bash
for i in `cat b.txt`
do
cat a.txt |grep $i
if [ $? -eq 1 ]
then
echo $i >> c.txt
fi
done
rm b.txt
mv c.txt b.txt
最后改一下就行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询