Dado este comando:
mkvmerge -o ./carpeta/X.mkv -S X.mkv X.srt
Tengo una carpeta llena de .mkv y de.srt. Quiero coger todos y hacerles ejecutar ese comando.
He intentado:
1º Buscar en la carpeta todos los archivos *.mkv
2º Ejecutar mkvmerge para cada ocurrencia
3º ¿Y ahora qué?
find -iname \*.mkv -exec mkvmerge -o ./modificado/{} -S {} $(¿Cómo eliminar la extensión?).srt \;
He probado sed, el problema esque lee de la entrada estándar. Y yo quiero que me coja el {} como argumento.
EDITO:
Solucionado, no es la mejor forma pero:
find -iname \*.mkv | sed 's/.\{4\}$//' | parallel mkvmerge -o ./modificado/{}.mkv -S {}.mkv {}.srt