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

Reply via email to