shell脚本-对比当前文档中每行内容在目标文档中是否存在

84 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

根据一个源样板文档(前提是一行一条内容),来对比目标文档中的每行条目是否在源文档中存在?

ipList.txt

1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4 5.5.5.5

ipList2.txt

1.1.1.1 6.6.6.6 8.8.8.8

脚本如下:

#!/usr/bin/env bash

srcFile是内容全的或者比较多的内容源文件

srcFile="/tmp/ipList.txt"

desFile是被对比的文件,即内容较少的文件

desFile="/tmp/ipList2.txt"

keyWord是在打印结果的时候,用来标记没有查到的内容

keyWord=" <---这行内容在srcFile中没有"

while read dLine do grep dLine{dLine} {srcFile} >/dev/null 2>&1 && echo dLineechoe"\e[1;31m{dLine} || echo -e "\e[1;31m{dLine}keyWord\e[0m"done<{keyWord} \e[0m" done < {desFile}

image.png