ffmpeg
자동으로 변환하고 mkv > m4v
m4v를 열어 메타데이터를 수동으로 가져오는 스크립트를 만들었고 Subler.app
, 이때 파일을 iTunes 라이브러리로 이동했습니다.
저는 네트워크에 두 대의 Apple TV가 있고 2007 iMac을 미디어 서버로 사용하기 때문에 iTunes를 사용합니다. ssh
이 스크립트를 실행하기 위해 이 컴퓨터에 대한 로컬 액세스 권한이 있습니다 .
공백이 포함된 경로를 입력하면 이 스크립트가 실패합니다.또는 공백이 포함된 영화 제목을 입력하세요. 공백을 수용하도록 이 스크립트를 어떻게 수정합니까? 나는 구문이 엉성하고 스크립팅에 매우 익숙하다는 것을 알고 있으므로 더 나은 실행을 위한 다른 조언이 있으면 크게 감사하겠습니다 :)
여기있어:
#! /bin/bash
#ffmp4
function convert {
ffmpeg -i $REPLY -strict -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
—————————
편집하다:
“$REPLY”
질문이 여전히 중복될 수 있지만 구문(try 및 “$(REPLY)”
) 을 사용해 보았습니다.연결된 답변여전히 실행할 수 없습니다. 진술서 errors
또는 진술서 반환...bad substitution
[…bracketed...]
echo
Error:This is not a valid response…
답변1
그래서 코칭 + 시행착오를 통해 해결책을 찾았습니다. “$REPLY”
변수를 인용했어요제안을 따르세요…하지만 나는반품스크립트가 올바르게 실행되는 [[…]]
대신 필요합니다 . […]
이유는 잘 모르겠지만 지금도 작동합니다. SE 커뮤니티에 감사드립니다!