Usando find
com -regex
MOVEFILES=".*\.\(mpg\|avi\|m4v\)"
find "$SOURCE" -type f -regex "$MOVEFILES" -exec mv {} "$DESTDIR" \;
Você também pode usar -iregex
em vez de -regex
para correspondências insensíveis a maiúsculas e minúsculas como AvI
e assim por diante.
Todo o \
parece feio, eu sei. -regextype posix-extended
, como usado em resposta @Murus , parece melhor.