On 01/07/17 19:25, Stephen via talk wrote:
I am new to Bash scripts.

I am trying to create a script to use avconv to convert mkv files to mp4
file.

Run one at a time the command runs fine.

When I execute this script I get an error about an unknown parameter. I
am guessing that the expansion with the filename variables is failing.

Can someone help me correct?

Thank you!

#!/bin/bash
# Usage: convert file to mp4
shopt -s nullglob
ext='.mp4'
for f in *.mkv
do
   base=$(basename $f .mkv)
   nFname=$base".mp4"
   echo $nFname
   avconv "-i $f -c:v libx264 -c:a copy $nFname"
done



Shouldn't you be quoting $f and $nFname separately, e.g.
 avconv -i "$f" -c:v libx264 -c:a copy "$nFname"
otherwise filenames with spaces will see -i catch only part of the filename.

Try adding echo in front of the avconv command and see what would be executed from within the script.

--
Michael Galea
---
Talk Mailing List
[email protected]
https://gtalug.org/mailman/listinfo/talk

Reply via email to