Mais… qu'est-ce qui t'empêche d'inverser les rôles de A et B pour aller dans un sens ou dans l'autre ?
Et tu peux concaténer les deux commandes dans une fonction qui fait les deux sens, du type :
f() {
echo "Fichiers uniquement dans $1 :"
grep -vFxf <(printf '%s\n' "$2"/* | sed -E 's%.*/|\.[^.]*%%g') <(printf '%s\n' "$1"/* | sed -E 's%.*/|\.[^.]*%%g')
echo -e "\nFichiers uniquement dans $2 :"
grep -vFxf <(printf '%s\n' "$1"/* | sed -E 's%.*/|\.[^.]*%%g') <(printf '%s\n' "$2"/* | sed -E 's%.*/|\.[^.]*%%g')
}
que tu lances par
f A B