On 14 November 2014 14:11, Ed Gordijn <ed.klari...@gmail.com> wrote: > Hi Urs, > > I'm not sure I do agree with your statement: > >> You can surely do what you want with a pure shell script, but Python may >> be cleaner to read > > The 'pure shell' script looks like this: > > #!/bin/bash > > shopt -s globstar # to be able to use ** for sub-dirs > > for lyFile in **/*.ly > do > out="${lyFile%.ly}" # filename without .ly > lilypond -o"$out" "$lyFile" > done
Or even shorter, if slightly more arcane: find . -name '*ly' -exec sh -c 'ly={}; lilypond -o "${ly%.ly}" "$ly"' \; By the way, thanks for the ${$varname%ending} trick, I didn't know it; I used to employ $(basename $varname ending) to achieve the same effect but your way is a lot shorter. ;) _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user