[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Soxi y bc en script



El día 2 de abril de 2013 01:33, Rantis Cares <rantiscares@gmail.com> escribió:
> El día 1 de abril de 2013 12:07, fernando sainz
> <fernandojose.sainz@gmail.com> escribió:
>> El día 1 de abril de 2013 19:48, Camaleón <noelamac@gmail.com> escribió:
>>> El Mon, 01 Apr 2013 10:37:50 -0600, Rantis Cares escribió:
>>>
>>>> Hace poco postee ayuda para hacer fade in y fade out a un archivo, ya me
>>>> quedo casi todo, ahora estoy tratando de adaptar a mis necesidades dicho
>>>> scrip que Marc amablemente aporto.
>>> (...)
>>>> El audio voz.wav dura  104.075215
>>>> El audio musica.wav dura 192.156735
>>> (...)
>>>> sox $mus musica-tmp3.wav trim 10 $( echo 8+$dvoz | bc ) vol 0.2
>>> (...)
>>>> soxi -D voz.wav
>>>> (standard_in) 1: syntax error
>>>>
>>>> Despues para verificar la duracion me arroja lo siguiente: soxi -D
>>>> musica-tmp3.wav
>>>> 182.156735
>>>>
>>>> Me imagino que tendra algo que ver con la variable $dvoz o con alguna
>>>> comilla en el area del trim.
>>>>
>>>> Algun comentario?.
>>>
>>> Pues... veamos:
>>>
>>> 192.156735 - 10 = 182.156735
>>>
>>> Uséase, que no te está procesando "$( echo 8+$dvoz | bc )" debido
>>> seguramente a lo que te comenta fernando.
>>>
>>> Saludos,
>>>
>>> --
>>> Camaleón
>>>
>>>
>>
>>
>> Para depurar shell scripts (bash en este caso) puedes usar
>>
>> bash -x script.sh
>>
>> Esto te pinta linea por linea lo que va haciendo el script.
>> $ man bash

Hola.
No debes responderme a mi, debes hacerlo a la lista.


Te falta lo anterior que es donde tenías el error.
dvoz=`soxi -D voz.wav`
La comilla (la de delante y detrás) se obtiene como te dije con la
tecla "[" al lado de la "p" mas un espacio después de pulsar la
comilla (si no, copia y pega de aquí). Esto es equivalente a lo que
haces después en el script "$(  ... )" que también ejecuta comandos.
Mira el man del bash.

En bash hay que tener mucho cuidado con los espacios que a veces no se
pueden poner en muchos sitios y otras son necesarios.

>
> + echo soxi -D voz.wav
> soxi -D voz.wav
> ++ bc
> ++ echo 8+soxi -D voz.wav

Aquí ya esta mal, la variable dvoz contiene "soxi -D voz.wav" y no el
resultado de ese comando.


S2.
Y no olvides que se responde a la lista.



> (standard_in) 1: syntax error
>
> Este es el resultado que me arroja.
>
> Saludos
>
>>
>>
>> S2.
>>
>>
>> --
>> To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
>> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
>> Archive: http://lists.debian.org/CAGwrHhvuGKrS2XWRd+tVckbfcH1qwuV0QEQpsUpMwp3DoXe_w@mail.gmail.com
>>
>
>
>
> --
> "Al juntarme dia tras dia con los Listeros, mi capacidad intelectual crece
> en proporcion inversa a la ignorancia generada. Gracias Linuxeros"


Reply to: