「ファイル」が次を返す写真のパッケージを処理しています:
$ file pic.jpg
pic.jpg: JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, baseline, precision 8, 231x288, frames 3
$ file pic.jpg | cut -d',' -f8 | tail -c+2
231x288
そのため、トリミングに進む前に、組み込みの「読み取り」を使用して、2 つの変数のディメンションを選択しています。
しかし、何かが私を逃します。なぜこの構造が機能しないのですか...
$ ( file pic.jpg | cut -d',' -f8 | tail -c+2 | IFS=x read width height ; echo w:$width h:$height; )
w: h:
...このコンストラクトが機能している間は?
$ ( IFS=x read width height <<< $(file pic.jpg | cut -d',' -f8 | tail -c+2) ; echo w:$width h:$height; )
w:231 h:288
要約すると、そのような状況で組み込みの「読み取り」を備えたパイプラインを使用できないのはなぜですか?