Я не думаю, что есть простой способ сделать это с помощью bash / sed / tr / find.
Я бы сделал скрипт на Ruby / Perl, который выполняет переименование.
#!/usr/bin/ruby
# Upcase.rb
ARGV.each{ |i|
newname = i.gsub(/(^.|\s.)/{ |x| x.upcase }
`svn mv "#{i}" "#{newname}" `
}
Тогда просто сделай
./Upcase.rb foo.txt test.txt test2.txt foo/bar/test.txt
или если вы хотите сделать целый режиссёр
find ./ -exec ./Upcase.rb {} +