演算子「;」、「&」、「&&」、または「||」の相対的なバインディング優先順位を知っています。
http://www.gnu.org/software/bash/manual/bashref.html#Lists
しかし、パイプが「&&」と一緒に画面に入ってくると、結合の強さを理解するのに苦労し、正しいコマンドに出くわすか、あきらめます。
'|'のバインディングの優先順位とは 上記と比較して「>」ですか?
私が混乱する例:
ls _thumbnails/video.mp4.jpg 2>/dev/null
&& echo "thumbnail already generated. Not regenerating" \
&& exit \
|| ffmpeg_thumbnail_create video.mp4 2>/dev/null \
&& ls _thumbnails/video.mp4.jpg \
&& echo "Thumbnail successfully created" \
&& exit \
|| echo "Thumbnail creation failed" \
| tee ~/thumbnails.log
上記の目的は、サムネイルがまだない場合にのみサムネイルを作成することです(私は毎日cronjobを実行しています)。そして、エラーがない場合(Unixの方法ではない)のffmpegの大量の出力は好きではありません。他の状況もあるので、これらのプログラムに固有の個別のステートメントまたは特別なオプションを使用するアドバイスを私に与えないでください。バインディングの優先順位を理解したい。
{
...}
うまくいくはずだと思います。私は体系的にそれを試みなかったかもしれません、そして、期待された結果を得ませんでした。