Apple の脅威の通知と金銭目当てのスパイウェアへの対策について

しばらく返答が寄せられていないようです。 再度ディスカッションを開始するには、新たに質問してください。

automatorでシェルスクリプトが止まる

automatorでtcshの次のようなシェルスクリプトを使おうとすると途中で止まってしまいます。



foreach i (*)

echo $i

ffmpeg -vcodec mpeg4 -i $i -y n$i:r.mpeg

end

これは複数のファイルをffmpegで変換するつもりだったのですが、

なぜか10個ほど変換すると止まってしまうのです。

terminalで同じシェルスクリプトを実行すれば、途中で止まる事無く最後まで実行されます。

一体何が悪いのでしょうか?

投稿日 2009/06/22 14:17

返信
返信: 6

2009/06/22 17:44 ぴっぴ への返信

ぴっぴさん、レスありがとうございます。


>sleepを咬ませば良いのでは...

だめのようでした。


>あるいはCommand; endとするとか...

すみません。意味が分からないのでもう少し説明お願いします。



なお、どうしてかわかりませんが、以下のようにffmpegの標準エラー出力をリダイレクトすると一応動かす事はできました:


ffmpeg -vcodec mpeg4 -i $j -y n$j:r.mpeg >& log


しかし意味が分かりません、、、。automatorのバグじゃないんでしょうか?

2009/06/22 17:54 ufo3.1415 への返信

foreach i (*)

echo $i

ffmpeg -vcodec mpeg4 -i $i -y n$i:r.mpeg; end

これで動くと思いますが..


あるいは...

foreach i (*)

echo $i

ffmpeg -vcodec mpeg4 -i $i -y n$i:r.mpeg

sleep 0.1

end

# 動くように数字を変更して下さい。


私ならAutomatorを使わないでShell Scriptで動かしますが...

2009/06/22 19:43 ぴっぴ への返信

ぴっぴさん、ありがとうございます。


>ffmpeg -vcodec mpeg4 -i $i -y n$i:r.mpeg; end


はやはりだめでした。

アクテイブモニターをみると、ffmpegが止まってしまっているようです、、。


>sleep 0.1

もsleep 10ですら駄目でした。

もっと数字を大きくすればうまく行くかもしれないですが、遅くて耐えられません、、、。



>私ならAutomatorを使わないでShell Scriptで動かしますが...


せっかくautomatorがあるから使ってみたのですが、
こんなに面倒ならそうした方がいいのかもしれませんね、、、。


結局、標準エラーのリダイレクトという意味不明の方法で我慢します、、、。

2009/06/22 21:18 ufo3.1415 への返信

リダイレクトしない状態で、Automatorを使わなければ動くのでしょうか。


もし動くのであればAutomatorのバッファみたいなのものがあって10個くらいの変換が、限界とか。(必ず10個ほどの様なので)

リダイレクトすると、そこに出力してしまってAutomatorは解放されるとか。




シェルスクリプトは、理解できない(つまり私の能力不足)ので、見当違い甚だしいときは、笑って通り過ぎてください^^;

2009/06/23 11:09 ni_ki への返信

ni_kiさん、レスありがとうございます。


>リダイレクトしない状態で、Automatorを使わなければ動くのでしょうか。


terminalで実行すればすんなり動きます。



>もし動くのであればAutomatorのバッファみたいなのものがあって10個くらいの変換が、限界とか。(必ず10個ほどの様なので)

リダイレクトすると、そこに出力してしまってAutomatorは解放されるとか。


たぶん、そう言う事なんだろうとは思いますが、そのくらいAutomatorの方でなんとかしてほしいものですね、、、。

コンソールでログがでるわけでもなく、何が起きてるのかさっぱりわからないので、Automatorでのデバッグは難しいのかな、、、。

automatorでシェルスクリプトが止まる

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple ID を使ってご参加ください。