我需要将文件status_before.csv与从status_after = $(db_status)之类的命令获取的变量进行比较,并打印差异 文件和变量看起来像 db1 db2 db3
QUEUE(qm1);STATUS(Running)
QUEUE(qm2);STATUS(Running)
它需要与posix norm兼容,需要逐行进行比较
function checkD{
if [ -s "$dir/Status_after.txt" ] && [ -s "$dir/tatus_before.txt" ]
then
difftemp=$(awk 'FNR==NR{array[$0];next}!($0 in array)' "$dir/Status_after.txt" "$dir/Status_after.txt")
if [ -z "$difftemp" ]
then
printf "all started" "OK"
else
printf "Below missing process"
printf "${red}%s\n${end}" "$difftemp"
printf "%s\n" "$difftemp" >> "$patchLog"
fi
else
return 1
fi
}
我使它可以处理文件,但是我无法比较带变量的文件或带变量的变量。差异印刷也很重要