Помимо логики, у вас есть следующие синтаксические ошибки:
file_list
, а не files_list
. Попробуйте Shellcheck перед публикацией.
Если вы должны сделать это в оболочке, попробуйте:
file_list1=(a.sh b.sh c.sh)
file_list2=(b.sh c.sh d.sh)
for i in "${file_list1[@]}"; do
repeated_in_A=0
for k in "${file_list2[@]}"; do
if [[ $k == $i ]]; then
repeated_in_A=1
break
fi
done
((repeated_in_A)) || echo "$k"
done