2 votos

aplicar un comando de conversión de terminal a cada archivo en una carpeta

¿Cómo aplica este comando de terminal ffmpeg -i $f -ac 2 -codec:a libmp3lame -b:a 48k -ar 24000 -write_xing 0 $f_converted; a cada archivo en un directorio? ($ f es el nombre del archivo y $ f_converted es el nombre convertido)

2voto

user3439894 Puntos 5883

Por qué AppleScript o Automator cuando esto puede hacerse sólo en la Terminal? Son todos los archivos en la misma carpeta? ¿A qué tipo de archivo se ha convertido, de su extensión, e.g .mp4?

Si todos los archivos se encuentran en la misma carpeta y sólo los archivos de destino, a continuación, en la Terminal, utilice los siguientes comandos:

cd /path/to/target_files
for f in *.*; do echo ffmpeg -i "$f" -ac 2 -codec:a libmp3lame -b:a 48k -ar 24000 -write_xing 0 "${f%.*}"_converted"${f##*.}"; done

Nota: El para qué comando se ha intencional echo de comandos para ejecutar una vez para ver lo que el resultado de la forma de la línea de comandos como se va a mirar para ver si se parece correcta. Ejecutar una segunda vez sin el echo comando para hacer el procesamiento real. Si el tipo de archivo de destino (por ejemplo) .mp4, usted puede cambiar *.* a *.mp4 o *.[mM][pP]4, donde el segundo se ocupa de ambos .mp4 y .MP4.

Si usted está utilizando, por ejemplo, de Automator con algunas Buscador de acciones para conseguir el objetivo de archivos, a continuación, ejecute esta en Ejecutar el Shell Script de acción, a continuación, establezca el Pase de entrada: a como argumentos y utilice las siguientes opciones para el comando:

for f in "$@"
do
    ffmpeg -i "$f" -ac 2 -codec:a libmp3lame -b:a 48k -ar 24000 -write_xing 0 "${f%.*}"_converted"${f##*.}"
done

  • "${f%.*}" expande a solo el nombre de archivo de la porción, sin la extensión de archivo.
  • "${f##*.}" expande sólo a la extensión de la porción, sin el nombre de archivo de la parte.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X