shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] AJuda com a formatação do printf quando com palavras


From: Lawrence Waclawiak
Subject: Re: [shell-script] AJuda com a formatação do printf quando com palavras que possuam acento.
Date: Mon, 19 Apr 2010 18:52:17 -0300
User-agent: Thunderbird 2.0.0.23 (X11/20090817)

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
<address@hidden <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

[root@ProxyP15 samba]# TAB=23;printf "%-$[TAB]s%-$[TAB]s\n" "ÁÁAAAA"
"BBBB"; printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA" "BBBB"
ÁÁÁAAA BBBB
AAAAAA BBBB
[root@ProxyP15 samba]# TAB=23;printf "%-$[TAB]s%-$[TAB]s\n" "ÁAAAAA"
"BBBB"; printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA" "BBBB"
ÁAAAAA BBBB
AAAAAA BBBB
[root@ProxyP15 samba]# TAB=23;printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA"
"BBBB"; printf "%-$[TAB]s%-$[TAB]s\n" "AAAAAA" "BBBB"
AAAAAA BBBB
AAAAAA BBBB
[root@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: address@hidden
<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
address@hidden <mailto:gunter%40infolink.com.br> <address@hidden <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: address@hidden
---------------------------------------------------------------------
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







reply via email to

[Prev in Thread] Current Thread [Next in Thread]