Adentrandome en los script

Spanish Forum

Moderator: JCSenar

Post Reply
ceciliorf
Level 1
Level 1
Posts: 26
Joined: Thu Apr 13, 2017 6:22 pm

Adentrandome en los script

Post by ceciliorf » Tue Feb 05, 2019 1:52 pm

Bueno como ya es hora de abordar el tema de los script decido crear uno para convertir las capturas en mkv a mp4

Pero no me funciona. Este es el script:

Code: Select all

#!/bin/bash

echo "Parametros:" $#

if $# -eq 2 then
ffmpeg -i $1 -codec copy $2
else
echo "Uso: mkv-mp4.sh archivo_origen.mkv archivos_destino.mp4"
fi
Esta es la salida:
bash ~/mkv-mp4.sh fWeb.mkv ff.mp4
Parametros: 2
/home/cecilio/mkv-mp4.sh: línea 7: error sintáctico cerca del elemento inesperado `else'
/home/cecilio/mkv-mp4.sh: línea 7: `else'

No veo error en else, He probado terminando con ; las lineas pero igual.

¿ que puede ser ?

User avatar
Wibol
Level 4
Level 4
Posts: 264
Joined: Fri Nov 27, 2015 7:00 am
Location: España

Re: Adentrandome en los script

Post by Wibol » Wed Feb 06, 2019 7:27 am

Por lo que he visto por ahí, puede ser la falta de "[ ]" en la comparación, la necesidad de usar ";" si se deja "then" en la misma línea que "if" o el indentado (4 espacios) de aquellas líneas encerradas dentro del condicional. Prueba con esto:

Code: Select all

#!/bin/bash

echo "Parametros:" $#

if [ $# -eq 2 ]; then
    ffmpeg -i $1 -codec copy $2
else
    echo "Uso: mkv-mp4.sh archivo_origen.mkv archivos_destino.mp4"
fi

Antes de realizar una consulta, no olvides:

ceciliorf
Level 1
Level 1
Posts: 26
Joined: Thu Apr 13, 2017 6:22 pm

Re: Adentrandome en los script

Post by ceciliorf » Wed Feb 06, 2019 1:12 pm

Gracias... funciona perfecto !!!

Post Reply

Return to “Español (Spanish)”