#!/bin/bash
#判断是否输入两个参数,文件1 和 文件2
if [ $# != 2 ]
then
echo "using:please enter two parameters"
exit 1
fi
#判断两个文件是否是普通文件
if [ -f $1 -a -f $2 ]
then
sed '1,$s/\s/\n/g' $1|#把文件1中的空格都替换为换行符,使得所有的单词都变为一列,循环送到
#while的word变量中
while read word
do
grep -q "\<$word\>" $2 #读到的每一个词在文件2查找,加-q参数后不打印搜索结果
if [ $? -eq 0 ] #如果查找成功,进入if模块中
then
sed -i "1,\$s/\<$word\>//g" $1 #把文件1中的所有word单词删除
sed -i "1,\$s/\<$word\>//g" $2 #把文件2中的所有word单词删除
fi
done
fi
sed -i -e "/^\s*$/d" -e "1,\$s/\s\{2,\}/ /g" -e "s/^\s//g" $1
sed -i -e "/^\s*$/d" -e "1,\$s/\s\{2,\}/ /g" -e "s/^\s//g" $2
#最后两句用来调整 删除所有相同单词后文件的格式
#"/^\s*$/d"用来删除多有空行
#"1,\$s/\s\{2,\}/ /g"用来使多个空格变为一个空格
#"s/^\s//g" $1 用来删除行首空白符
# "-e" 参数用来在一条语句中执行多条sed命令
#end
阅读(1870) | 评论(0) | 转发(0) |