用脚本找出a.txt有b.txt没有
有两个文件a.txt和b.txt,需求是,把a.txt中有的并且b.txt中没有的行找出来,并写入到c.txt,然后计算c.txt文件的行数。
#!/bin/bash
n=`wc -l a.txt|awk '{print $1}'`
[ -f c.txt ] && rm -f c.txt
for i in `seq 1 $n`
do
l=`sed -n "$i"p a.txt`
if ! grep -q "^$l$" b.txt
then
echo $l >>c.txt
fi
done
wc -l c.txt
或者用grep实现
grep -vwf b.txt a.txt > c.txt; wc -l c.txt
测试