管道输出到 bash 命令的中间

piping output into middle of bash command

与这个问题有些相关:Convert audio files to mp3 using ffmpeg

我想在 BASH 中使用管道在一行中执行命令。

我想做的是:

echo "Hello" | somecommand | ffmpeg -i _____ -f mp2 output.mp3 

其中 _____somecommand 的输出。有什么办法可以实现吗?

你可以在中间参数这里使用command substitution

ffmpeg -i "$(echo 'Hello' | somecommand)" -f mp2 output.mp3 

尝试使用 xargs

echo "Hello" | somecommand | xargs ffmpeg -f mp2 output.mp3 -i

echo "Hello" | somecommand | xargs -i ffmpeg -i {} -f mp2 output.mp3