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

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

Re: [shell-script] Preenchimento com espaços a esquerda


From: Ultimo de Miranda
Subject: Re: [shell-script] Preenchimento com espaços a esquerda
Date: Fri, 07 Aug 2015 11:58:32 -0300

ps deve mostrar


On Fri, 2015-08-07 at 16:51 +0200, Tiago Peczenyj
address@hidden [shell-script] wrote:
>   
> ok... começa a fazer sentido, mas vc deveria descobrir qual o shell
> corrente.
> 
> 
> talvez 
> 
> 
> $ echo $TERM
> 
> 
> mas não sei se isso é padrão
> 
> 2015-08-07 16:49 GMT+02:00 Leandro Valiengo
> address@hidden [shell-script]
> <address@hidden>:
>           
>         fala pessoal, 
>         
>         
>         quando digito uname -a, vejam: 
>         
>         
>         $> uname -a
>         
>         HP-UX #### B.11.31 U ia64 2262551860 unlimited-user license
>         
>         
>         
>         
>         
>         
>         Em Sexta-feira, 7 de Agosto de 2015 11:41, "Tiago Peczenyj
>         address@hidden [shell-script]"
>         <address@hidden> escreveu:
>         
>         
>         
>         
>           
>         
>         Julio
>         
>         
>         Como no ksh as variaveis "depois do pipe" voltam?
>         
>         2015-08-07 16:38 GMT+02:00 'Julio C. Neves'
>         address@hidden [shell-script]
>         <address@hidden>:
>                   
>                 
>                 Isso é um artifício do Bash que se chama Here String e
>                 que no ksh (UNIX) equivale a:
>                 
>                 
>                 IFS=\;
>                 echo "123;teste;cachorro" | read c1 c2 c3
>                 
>                 printf "%10s%20s%15s\n" $c1 $c2 $c3
>                 
>                 
>                 
>                 Isso deve funcionar.
>                 
>                 Abcs,
>                 Julio
>                 @juliobash
>                 Próximos cursos de Shell
>                 
>                 
>                 Cidade         Local Período
>                 Curitiba SoftSell 10/08 a 14/08 
>                 São Paulo 4Linux 21/09 a 25/09 
>                 Rio de Janeiro EDX 05/10 a 09/10 
>                 
>                 São Paulo 4Linux 07/12 a 11/12 
>                 
>                 
>                 Dou treinamento de Shell em qualquer cidade.
>                 Para mais detalhes, me mande um e-mail.
>                 
>                         > 
>                 
>                 
>                 
>                 2015-08-07 11:25 GMT-03:00 Leandro Valiengo
>                 address@hidden [shell-script]
>                 <address@hidden>:
>                           
>                         
>                         oi leslie, 
>                         
>                         
>                         é que esse atribuição <<< não funciona no meu
>                         prompt do unix...
>                         
>                         
>                         
>                         
>                         Em Sexta-feira, 7 de Agosto de 2015 11:03,
>                         "Leslie Watter address@hidden
>                         [shell-script]"
>                         <address@hidden> escreveu:
>                         
>                         
>                         
>                           
>                         
>                         Oi Leandro, 
>                         
>                         
>                         Leandro, vc só tirou o comando que mostra como
>                         vc quer. Veja só o quote da resposta que o
>                         Julio já tinha te mandado:
>                         
>                         
>                         %%%% > Fala Leandro,
>                         %%%% > já havia passado uma solução
>                         alternativa:
>                         %%%% > $ IFS=\; read c1 c2 c3 <<<
>                         "123;teste;cachorro"
>                         %%%% > $ printf "%10s%20s%15s\n" $c1 $c2 $c3
>                         
>                         
>                         o comando que mostra as strings do jeito que
>                         vc quer é o printf. 
>                         os outros só servem pra colocar as variáveis
>                         de teste em c1 c2 e c3
>                         
>                         
>                         Att,
>                         
>                         
>                         LEslie
>                         
>                         
>                         
>                         On Fri, Aug 7, 2015 at 10:10 AM, Leandro
>                         Valiengo address@hidden
>                         [shell-script]
>                         <address@hidden> wrote:
>                                   
>                                 
>                                 prezados, 
>                                 
>                                 
>                                 bom dia. 
>                                 
>                                 
>                                 é unix. e vejam a linha de comando que
>                                 mandaram agora, funcionou em
>                                 partes...rs. Mas lembrem-se, no
>                                 original, pedi para colocar os espacos
>                                 antes das colunas e nao vejo nada
>                                 disso no comando ou na resposta: 
>                                 
>                                 
>                                 $> echo  "123;teste;cachorro" | (IFS=
>                                 \; read c1 c2 c3;echo $c1 - $c2 - $c3)
>                                 
>                                 123 - teste - cachorro
>                                 
>                                 
>                                 
>                                 Lembrando que preciso completar com
>                                 espaço: 
>                                 
>                                 
>                                 123 tem que ficar: '       123' --> 10
>                                 espacos
>                                 teste tem que ficar: '
>                                 teste' --> 20 espacos
>                                 cachorro tem que ficar: '
>                                 cachorro' --> 15 espacos
>                                 
>                                 
>                                 obrigado. 
>                                 
>                                 
>                                 
>                                 
>                                 
>                                 
>                                 Em Sexta-feira, 7 de Agosto de 2015
>                                 0:22, "'Julio C. Neves'
>                                 address@hidden [shell-script]"
>                                 <address@hidden>
>                                 escreveu:
>                                 
>                                 
>                                 
>                                   
>                                 
>                                 Fala Leandro, que shell é esse que vc
>                                 está usando? Isso é UNIX? Se for, o
>                                 ksh não tem here strings (<<<).
>                                 PBS: o ponto e vírgula após a
>                                 declaração do IFS, não existe.
>                                 Em 06/08/2015 17:03, "Leandro Valiengo
>                                 address@hidden
>                                 [shell-script]"
>                                 <address@hidden>
>                                 escreveu:
>                                           
>                                         
>                                         Prezados, 
>                                         
>                                         
>                                         muito obrigado pelas solucoes.
>                                         Estou tentando usar do
>                                         Julinho, pois ele diz q é a
>                                         mais rapida pois é shell
>                                         puro. 
>                                         
>                                         
>                                         Julio, 
>                                         
>                                         
>                                         Estou recebendo um erro ao
>                                         tentar reproduzir a linha de
>                                         comando no prompt: 
>                                         
>                                         
>                                         $> IFS=\; read c1 c2 c3 <<<
>                                         "123;teste;cachorro"
>                                         sh: Syntax error: `<' is not
>                                         expected.
>                                         
>                                         
>                                         abs,
>                                         
>                                         
>                                         
>                                         
>                                         
>                                         
>                                         Em Quinta-feira, 6 de Agosto
>                                         de 2015 16:24, "'Julio C.
>                                         Neves' address@hidden
>                                         [shell-script]"
>                                         <address@hidden> escreveu:
>                                         
>                                         
>                                         
>                                           
>                                         
>                                         Fala Leandro,
>                                         já havia passado uma solução
>                                         alternativa:
>                                         $ IFS=\; read c1 c2 c3 <<<
>                                         "123;teste;cachorro"
>                                         $ printf "%10s%20s%15s\n" $c1
>                                         $c2 $c3
>                                                123               teste
>                                         cachorro
>                                         
>                                         
>                                         Só esqueci de dizer que essa
>                                         solução deve ser mais rápida
>                                         que a com awk, pq é shell
>                                         puro.
>                                         
>                                         Abcs,
>                                         Julio
>                                         @juliobash
>                                         Próximos cursos de Shell
>                                         
>                                         
>                                         Cidade         Local Período
>                                         Curitiba SoftSell 10/08 a
>                                         14/08 
>                                         São Paulo 4Linux 21/09 a
>                                         25/09 
>                                         Rio de Janeiro EDX 05/10 a
>                                         09/10 
>                                         
>                                         São Paulo 4Linux 07/12 a
>                                         11/12 
>                                         
>                                         
>                                         Dou treinamento de Shell em
>                                         qualquer cidade.
>                                         Para mais detalhes, me mande
>                                         um e-mail.
>                                         
>                                                 > 
>                                         
>                                         
>                                         
>                                         Em 6 de agosto de 2015 15:36,
>                                         Leandro Valiengo
>                                         address@hidden
>                                         [shell-script]
>                                         <address@hidden> escreveu:
>                                                   
>                                                 
>                                                 Prezados, 
>                                                 boa tarde. 
>                                                 
>                                                 
>                                                 Tenho um arquivo
>                                                 separado por ';' como
>                                                 por exemplo: 
>                                                 
>                                                 
>                                                 123;teste;cachorro
>                                                 
>                                                 
>                                                 
>                                                 Minha missao é
>                                                 preencher com espaco
>                                                 da seguinte forma: 
>                                                 
>                                                 
>                                                 primeira posição:
>                                                 Preencher com espacos
>                                                 até a posicao total
>                                                 ser 10
>                                                 segunda posição:
>                                                 Preencher com espacos
>                                                 até a posicao total
>                                                 ser 20 
>                                                 terceira posição:
>                                                 Preencher com espacos
>                                                 até a posicao total
>                                                 ser 15
>                                                 
>                                                 
>                                                 
>                                                 Qual o comando com awk
>                                                 para realizar esse
>                                                 trabalho? 
>                                                 
>                                                 
>                                                 abs, 
>                                                 
>                                                 
>                                                 
>                                                 
>                                                 
>                                                 
>                                         
>                                         
>                                         
>                                         
>                                         
>                                         
>                                         
>                                         
>                                 
>                                 
>                                 
>                                 
>                                 
>                                 
>                                 
>                         
>                         
>                         
>                         
>                         -- 
>                         Leslie H. Watter
>                         
>                         
>                         
>                         
>                         
>                         
>                         
>                 
>                 
>                 
>                 
>         
>         
>         
>         
>         -- 
>         Tiago B. Peczenyj
>         
>         http://about.me/peczenyj
>         
>         
>         
>         
>         
>         
> 
> 
> 
> 
> -- 
> Tiago B. Peczenyj
> 
> http://about.me/peczenyj
> 




reply via email to

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