[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Automatic way of applying the same command to a bunch of files

On Wednesday, Sep 20th 2006 at 14:45 +0100, quoth Andy Green:

=>Paul Smith wrote:
=>> On 9/20/06, Andy Green <andy warmcat com> wrote:
=>> > >> 12\ Missa\ brevis\ in\ G,\ KV\ 140App,\ C1.\ 12\ Agnus\ Dei.wav
=>> > >
=>> > > Perhaps the best strategy is to eliminate all '\' and then use "$i".
=>> > > However, I do not know how to implement it.
=>> > 
=>> > No Paul Howarth's method was best, the problem is probably coming from
=>> > the commas.  For example, can you do the sox by hand with that filename
=>> > even?
=>> Yes, I can, Andy.
=>Hm well this works for me with the filename
=>$ ls *.wav
=>12 Missa brevis in G, KV 140App, C1. 12 Agnus Dei.wav
=>for i in *\ * ; do sox "$i" -r 44100 -t wav "output_$i" ; done
=>You need the -t otherwise sox gets confused trying to work it out from the
=>suffix; because it contains dots in the file part it complains that the type "
=>12 Agnus Dei.wav" is unknown without -t.

find . -name \*.wav -print0 | \
   xargs -0 sox "{}" -r 44100 -t wav "output_{}"

I forget what the search criteria was. Just pee in the -name arg for 

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]