Como usar o fnmatch de um shell?

Em um script shell genérico, eu gostaria de usar a correspondência de padrões de shell para filtrar as linhas de um arquivo de texto.

Eu tenho uma lista de nomes de arquivos em files.txt:

file1.txt
file2.sh
file3.png

E eu tenho uma lista de padrões em patterns.txt:

other_file.txt
file2.*

Se eu tivesse expressões regulares em patterns.txt, eu poderia fazer isso:

$ grep -v -f patterns.txt files.txt

Mas eu gostaria de usar padrões de globbing de shell. Eu encontrei a função C fnmatch, mas nenhum comando shell / unix para usá-lo.

questionAnswers(1)

yourAnswerToTheQuestion