Ahn?

^ == Inicio de linha
\b == border, caracteres de borda, como ponto, tab, espaço e inclusive
inicio de linha

Talvez o que tu deva fazer pra melhorar é evitar do sed tentar fazer upper
pra caracteres que não tem upper, fazendo:

$ sed 's/^[a-z]/\U&/'

Cuidado com a tua solução, pode acontecer dela não ser valida pra todos os
casos.

Pode conferir em:
http://guia-er.sourceforge.net/borda.html#2_3_3

--

Flávio do Carmo Júnior aka waKKu

2008/11/13 Leonardo Bernardes <[EMAIL PROTECTED]>

>   Obrigado, Flavio
>
> É isso mesmo que eu queria, a única diferença é que eu queria alterar
> palavras ao invés da string inteira, daí só substitui o ^ por \b e
> funcionou
>
> Valeu, obrigado!
>
> --- Em [email protected] <shell-script%40yahoogrupos.com.br>,
> "Flavio Junior" <[EMAIL PROTECTED]>
> escreveu
> >
> > Se eu entendi o que tu quer, seria algo tipo:
> >
> > arquivo.txt
> > para
> > Arquivo.txt ?
> >
> > $ sed 's/^./\U&/' <<<"arquivo.txt"
> >
> >
> > # sed 's/^./\U&/' <<<"arquivo.txt"
> > Arquivo.txt
> > lazlo:~#
> >
> >
> > --
> >
> > Flávio do Carmo Júnior aka waKKu
> >
> > 2008/11/13 Leonardo Bernardes <[EMAIL PROTECTED]>
> >
> > > Quero capitalizar o nome de arquivos que estão todos os letras
> > > minúsculas.
> > > Como eu faço? Que comando usar?
> > > Tentei algo como
> > >
> > > tr "\b[a-z]{1,1}" "\b[A-Z]{1,1}"
> > >
> > > Mas o resultado é maiúscula pra todas as letras. Tentei com o SED
> mas sem
> > > proveito algum!
> > > Agradeço desde já
> > >
> > > Leonardo Bernardes
> > > Usuário Linux # 444329
> > > brausen.blogspot.com
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]

Responder a