#今日脚本需求:
#有两个文件a.txt和b.txt,需求是把a.txt中有的且b.txt中没有的行找出来,并写入到c.txt,然后计算c.文件的行数
### 分割线,以下为脚本正文
#---------------------------------
#!/bin/bash
#author:amung (vx:lishumung2o09)
#verson:v1
#如果c.txt已经存在就先删除掉
[ -f c.txt ] && rm -f c.txt
## 使用while循环遍历a.txt所有行
cat a.txt | while read line
do
## 如果b.txt里面没有这行内容,将其写入c.txt
if ! grep -q "${line}$" b.txt
then
echo ${line} >> c.txt
fi
done
## 计算c.txt行数
## 或者使用grep实现
## grep -vwf b.txt a.txt > c.txt; wc -l c.txt
<<"COMMENT"
关键知识点总结:
1)遍历文件每一行,用while read ... 而不是for
2) grep "^${abc}$" b.txt 过滤的是完整的行,从头匹配到结尾
COMMENT
找出文件中不同的行
转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
找出numpy array数组中的不同元素
基础基础基础
数组 经验分享