Um pouco mais simples, ainda com sed: $ cat xyz | sed -r 's/\b[a-z]+/\u&/g' Alfredo Morto Alberto Roberto Macaco Malandro Balh Ble Tatu Preguicoso Prego Batido Urangotango Chines
\b == border (inicio de linha, espaço, tab ... essas coisa) \u == uppercase & == a regex que foi casada no primeiro campo... Ou seja: Case border+letra minuscula, imprima em uppercase o que foi casado. Sorte, Flávio do Carmo Junior aka waKKu #bash-br @ irc.freenode.net 2008/4/4 voyeg3r <[EMAIL PROTECTED]>: > > > > > > > Só para constar. A mesma solução usando o vim, para casos em que > você só tenha o vim seria assim: > > # abrir todos os arquivos > vim *.txt > > # disparar o comando bufdo > > :bufdo :%s/^./\U&/g | :wall > > # dar alguns enteres confirmando e finalmente digitar > :qall > > --- Em [email protected], "Ivan lopes" > <[EMAIL PROTECTED]> escreveu > > > > cat xyz | sed 's/\(^\)\?\([^ ]*\)/\u&/g' > > Alfredo > > Alberto > > Macaco > > Tatu > > Prego > > Urangotango > > Cesar Eduardo Motta Vianna > > > >
