ffmpeg
自動的に変換してmkv > m4v
m4vを開き、メタデータを手動でインポートするスクリプトを作成しSubler.app
、その時点でファイルをiTunesライブラリに移動しました。
私はネットワークに2台の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コミュニティに感謝!