find . -maxdepth 1 -type f -name '*.mkv' -print0 | sort -Vz | xargs -0r mpv
Isso usa find para exibir uma lista separada por NUL de todos os nomes de arquivos correspondentes a '* .mkv' no diretório atual, então GNU sort (com -z ou --zero-terminated para entrada separada em NUL e -V ou --version-sort para classificar os nomes de arquivos) e, finalmente, xargs -0r mpv para executar mpv com todos os nomes de arquivos na ordem classificada como os argumentos.
Isso funcionará com qualquer nome de arquivo, mesmo aqueles com espaços, feeds de linha ou meta-caracteres do shell no nome.
AFAIK, apenas GNU sort e sort do FreeBSD atualmente suportam a opção -z ou --zero-terminated .