フォルダにビデオのセットがあります。 ffmpeg -i
コマンドを使用してこのビデオに関する情報を取得し、出力をファイルに保存したいと思います。
だから私は行を書きました:
find . -type f -exec ffmpeg -i {} \; > log.txt
しかし、驚くべきことに、ログは空です!ここで何が欠けていますか?
ここで何が起こっているのかと思いますが、ffmpeg
はその出力をstderr
に送信しています。この場合、必要なのは次のとおりです。
find . -type f -exec ffmpeg -i {} \; 2>log.txt
テストするディストリビューションにffmpeg
がありませんが、これはavconv
のlibav
で確認されています(この点で同じであるはずです)。
exec内で出力を設定する
find . -type f -exec ffmpeg -i {} \; > log.txt
breno@stormtrooper:/tmp$ find . -type f -exec ls {} >> /tmp/test.log \;
find: `./Pulse-PKdhtXMmr18n`: Permission denied
breno@stormtrooper:/tmp$ ls
hsperfdata_breno Pulse-PKdhtXMmr18n ssh-SLDpHf9PBb5g t2 test.log
breno@stormtrooper:/tmp$ cat test.log
./.X0-lock
./.t2.swp
./hsperfdata_breno/3692
./test.log
./.wine-1000/server-801-8a0557/lock
./t2