printf 'file.mp4\n%.0s' {1..118} > files.txt cat inputs.txt | tr -d "\n" | sed -r "s|file |\ -i |g" > input.txt for i in {0..119}; do echo "[$i:v:0][$i:a:0]"; done > filters.txt cat filters.txt | tr -d "\n" > filter.txt ffmpeg $(cat input.txt) -filter_complex "$(cat filter.txt)" -map "[outv]" -map "[outa]" out.mkv