Com o bash, você definiria as opções globstar
e nullglob
shell e usaria **
para recursar em subdiretórios:
shopt -s globstar nullglob
for mkvfile in **/*.mkv; do
mkvpropedit "$mkvfile" -e info -s title="${mkvfile::-4}"
done
Veja 4.3.2 O Shopt Builtin no manual.
Note que você também pode usar ${mkvfile%.mkv}
para cortar a extensão.
Você também pode usar o find, mas acho que ficou muito feio
find . -name '*.mkv' -exec sh -c 'mkvpropedit "$1" -e info -s title="$(basename "${1%.mkv}")"' sh {} \;