【发布时间】:2020-03-16 10:39:00
【问题描述】:
我尝试过使用 2 个数组来比较这 2 个文件,但我是菜鸟,我不知道该怎么做:
vec_fis_1=`cat fisier.txt`
vec_fis_2=`cat fisier1.txt`
echo $vec_fis_2
echo $vec_fis_1
for i in ${vec_fis_1[@]}
do
for j in ${vec_fis_2[@]}
do
if ( "$i" == "$j" )
then
echo $i
echo $j
fi
done
done
【问题讨论】:
-
在 shellcheck.net 检查您的脚本。将
diff与head -n5一起使用。 -
此命令显示两个文件的前 5 行,但我只需要文件之间不同的前 5 行。
-
文件排序了吗?
-
不,他们不是。
-
因此,最简单的方法可能是首先将
sort两个文件放入临时文件,然后diff它们,正如@KamilCuk 所暗示的那样。您需要将参数更改为diff或运行 diff 到grep或awk的输出,以允许diff命令生成的各种信息行。
标签: arrays linux shell file ubuntu