J'ai fait un script pour automatiser la conversion de ffmpeg
depuis mkv > m4v
> ouvrez le m4v dans Subler.app
pour importer les métadonnées manuellement, à quel point je vais déplacer le file dans ma bibliothèque iTunes.
J'utilise iTunes parce que j'ai deux téléviseurs Apple sur le réseau et utilise un iMac 2007 pour fonctionner comme mon server multimédia. Je ssh
localement dans cette machine afin d'exécuter ce script.
Ce script échoue si je saisis un path avec des espaces blancs ou saisis un titre pour le film comportant des espaces. Comment réparer ce script pour accommoder les espaces blancs? Je sais que la syntaxe est bâkeye, je suis très nouveau pour les scripts, donc tout autre pointeur pour le faire fonctionner serait apprécié 🙂
C'est ici:
#! /bin/bash #ffmp4 function convert { ffmpeg -i $REPLY -ssortingct -2 -c:v copy -c:a copy -c:s copy $PWD/out.m4v } function rename { echo "Please Provide the Title:" read -e; mv $PWD/out.mp4 $PWD/$REPLY.m4v } function subler { open -a Subler.app $REPLY.m4v } cd ~/Public/ && while read -e; do if [ ${REPLY: -4} == ".mkv" ]; then convert; rename; subler; exit else echo "Error: This is not a valid response" && exit 1 fi done
———
MODIFIER:
Question peut toujours être un doublon possible, mais j'ai essayé d'utiliser la syntaxe (à la fois essayer “$REPLY”
et “$(REPLY)”
) dans la réponse liée et toujours échouer à exécuter. Les errors
returnnent une bad substitution
pour l'instruction […bracketed...]
ou ma déclaration echo
… Error:This is not a valid response…
Donc, les conseils + les essais et les erreurs m'ont amené à find une solution. J'ai cité la variable “$REPLY”
comme suggéré … mais j'avais aussi besoin de [[…]]
au lieu de […]
pour que le script s'exécute correctement. Je ne sais pas exactement pourquoi, mais maintenant ça marche quand même. Merci à la communauté SE!