Faça um loop sobre cada arquivo no diretório 2 e tente remover o equivalente com o mesmo nome de arquivo ( basename ) no diretório 1.
for f in dir2/*; do echo rm -f -- dir1/"$(basename "$f")"; done
Observe que rm -f não causa erros nos arquivos que não são encontrados. Remova o echo quando tiver certeza de que removeria as coisas certas.
Se você quiser chamar apenas rm nos arquivos existentes, teste se eles estão em dir1 com [[ -f … ]] .
for f in dir2/*; do del=dir1/"$(basename "$f")"; [[ -f "$del" ]] && rm -- "$del"; done