O problema de trucar eu já resolvi utilizando expansão de variáveis da 
seguinte forma:

TAB=23;printf "%-$[TAB]s%-$[TAB]s\n" "${NOMECOMPLETO:0:$[$TAB - 1]}" 
"${GRUPO:0:$[$TAB - 1]}"
Dessa forma a saida sempre é truncada com o tamanho da TAB - 1

Mas persiste o problema principal referente à acentuação.

ALguém tem mais alguma idéia ?



Lawrence Waclawiak escreveu:
> Opa.
> Seguinte, o liguagem está em en_US.UTF-8
> troquei a liguagem no script para pt_BR.UTF-8 mas não adiantou nada.
> Você chegou a testar ai no seu pc se o desalinhamento ocorre?
>
>
> Bruno Gunter escreveu:
>   
>> Que tal usar UTF-8?
>> Deve resolver teu problema.
>>
>> Para confirmar se você está usando o UTF-8, faça:
>>
>> set | grep UTF
>>
>> Que deve retornar algo como:
>> GDM_LANG=pt_BR.UTF-8
>> LANG=pt_BR.UTF-8
>>
>> []'s
>> Gunter
>>
>> Em 19 de abril de 2010 17:36, Lawrence Waclawiak
>> <lawrence...@yahoo.com.br <mailto:lawrencebbw%40yahoo.com.br>>escreveu:
>>
>>     
>>> Galera, vi que aki parece alinhado, deve ser alguma coisa do e-mail mas
>>> não fica alinhado no bash.
>>> Tem de jogar o comando no Bash pra ver.
>>>
>>> Lawrence Waclawiak escreveu:
>>>       
>>>> E ai galera? na Paz?
>>>> Venho pedir a ajuda dos caros colegas com relação ao comando printf.
>>>>
>>>> No meu trabalho eu estou desenvolvendo um script para comptrolar 
>>>>         
>> um PDC
>>     
>>>> em samba e para as funções de pesquisa e listagem de usuários eu 
>>>>         
>> utilizo
>>     
>>>> o printf para formatar a saida, juntamente com o tput para calcular as
>>>> colular e consegquentemente o espaçamento necessário entre elas.
>>>>
>>>> O problema que estou enfrentando é que quando imprimo alguma 
>>>>         
>> string que
>>     
>>>> possua acento o printf puxa a formatação uma casa para esquerda nessa
>>>> respectiva linha para cada caracter acentuado, detonando a 
>>>>         
>> formatação da
>>     
>>>> lista.
>>>>
>>>> O exemplo abaixo mostra o que estou falando
>>>>
>>>> [r...@proxyp15 samba]# TAB=23;printf "%-$[TAB]s%-$[TAB]s\n" "ÁÁAAAA"
>>>> "BBBB"; printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA" "BBBB"
>>>> ÁÁÁAAA BBBB
>>>> AAAAAA BBBB
>>>> [r...@proxyp15 samba]# TAB=23;printf "%-$[TAB]s%-$[TAB]s\n" "ÁAAAAA"
>>>> "BBBB"; printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA" "BBBB"
>>>> ÁAAAAA BBBB
>>>> AAAAAA BBBB
>>>> [r...@proxyp15 samba]# TAB=23;printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA"
>>>> "BBBB"; printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA" "BBBB"
>>>> AAAAAA BBBB
>>>> AAAAAA BBBB
>>>> [r...@proxyp15 samba]#
>>>>
>>>> Só pra constar já tentei colocar o AAAAAA sem aspas, com aspas duplas
>>>> como está no exemplo e com aspas simples tbm, dá tudo na mesma, sai do
>>>> alinhamento.
>>>> Não caso eu não encontre uma solução irei partir para passar o TR
>>>> removendo os acentos de tudo, mas como se trata de Nomes preferia não
>>>> fazer isso.
>>>> Já aproveitando a deixa se alguém souber como faço para truncar o 
>>>>         
>> número
>>     
>>>> de caracteres de uma variável impressa pelo printf seria de grande 
>>>>         
>> ajuda
>>     
>>>> tbm.
>>>>
>>>> Grato,
>>>> Lawrence Waclawiak
>>>>
>>>>
>>>>         
>>>
>>>
>>> ------------------------------------
>>>
>>> ----------------------------------------------------------
>>> Esta lista não admite a abordagem de outras liguagens de 
>>>       
>> programação, como
>>     
>>> perl, C etc. Quem insistir em não seguir esta regra será moderado 
>>>       
>> sem prévio
>>     
>>> aviso.
>>> ----------------------------------------------------------
>>> Sair da lista: shell-script-unsubscr...@yahoogrupos.com.br 
>>>       
>> <mailto:shell-script-unsubscribe%40yahoogrupos.com.br>
>>     
>>> ----------------------------------------------------------
>>> Esta lista é moderada de acordo com o previsto em
>>> http://www.listas-discussao.cjb.net 
>>>       
>> <http://www.listas-discussao.cjb.net>
>>     
>>> ----------------------------------------------------------
>>> Servidor Newsgroup da lista: news.gmane.org
>>> Grupo: gmane.org.user-groups.programming.shell.brazil
>>>
>>> Links do Yahoo! Grupos
>>>
>>>
>>> [image: InfoLink - Hospedagem de Sites]
>>>       
>> *Bruno Gunter*
>> Equipe InfoLink Hospedagem
>> gun...@infolink.com.br <mailto:gunter%40infolink.com.br> 
>> <gun...@infolink.com.br <mailto:gunter%40infolink.com.br>>
>> www.infolink.com.br
>> Tel.: 2104-1932
>>
>> [As partes desta mensagem que não continham texto foram removidas]
>>
>>
>>     
>
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: shell-script-unsubscr...@yahoogrupos.com.br
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>
>   




------------------------------------

---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: shell-script-unsubscr...@yahoogrupos.com.br
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    shell-script-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a