在 2013年12月3日星期二UTC+8下午5时33分09秒,Alain Ketterlin写道: > Ben Finney <ben+pyt...@benfinney.id.au> writes: > > > > > Chris Angelico <ros...@gmail.com> writes: > > > > > >> On Mon, Dec 2, 2013 at 10:34 PM, iMath <redstone-c...@163.com> wrote: > > >> > ffmpeg -f concat -i <(for f in ./*.wav; do echo "file '$f'"; done) -c > >> > copy output.wav > > >> > ffmpeg -f concat -i <(printf "file '%s'\n" ./*.wav) -c copy output.wav > > >> > ffmpeg -f concat -i <(find . -name '*.wav' -printf "file '%p'\n") -c > >> > copy output.wav > > >> > > >> In bash, the <(...) notation is like piping: it executes the command > > >> inside the parentheses and uses that as standard input to ffmpeg. > > > > > > Not standard input, no. What it does is create a temporary file to > > > contain the result, and inserts that file name on the command line. This > > > is good for programs that require an actual file, not standard input. > > > > Just in case (it may not be relevant to the current discussion): it may > > not be a file, it will more probably be a FIFO (i.e., not seekable). > > Here is the relevant part of the manual page: > > > > | Process Substitution > > | Process substitution is supported on systems that support named > > | pipes (FIFOs) or the /dev/fd method of naming open files. It > > | takes the form of <(list) or >(list). The process list is run > > | with its input or output connected to a FIFO or some file in > > | /dev/fd. The name of this file is passed as an argument to the > > | current command as the result of the expansion. > > > > -- Alain.
thanks for your reply, but is there any method that we can convert this to python ? -- https://mail.python.org/mailman/listinfo/python-list