Вы можете попробовать следующее:
for i in $setB; do
if ! echo "$setA" | grep -q "$i"; then
echo "$i is not in setA"
fi
done
Если у вас есть bash
, вы можете попробовать это:
for i in $setB; do [[ "$setA" =~ "$i" ]] || echo "$i is not in setA"; done
Оператор =~
используется для проверки того, является ли элемент setB
частью setA
.
Учитывая 2 набора, совпадения нет, потому что вы спросили элементов, которые присутствуют в наборе B, но отсутствуют в наборе A .
Если вы расширяете setB
другим элементом, подобным этому:
setB='A.txt D.txt F.txt'
и тогда вы получите
$ for i in $setB; do [[ "$setA" =~ "$i" ]] || echo "$i is not in setA"; done
F.txt is not in setA