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

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

Re: [shell-script] retorno de comando para variavel


From: phfbettega
Subject: Re: [shell-script] retorno de comando para variavel
Date: Fri, 25 Nov 2016 14:37:02 -0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0

Olá Kleyton, o campo $8 é o nome e o $1 é o código?
Veja se só com awk resolve
awk -F " " '/joanesetin/ {print $8" "$1";exit}'

Abraços Paulo

On 25-11-2016 14:09, Kleyton Maia address@hidden [shell-script] wrote:


Pessoal pro nome deu certo dessa forma: (com o sort no final diogo)


Porem para o codigo da conexão que vem na posição $3 do awk nao deu resultado 
com o sort-u ou sem vem os dois
códigos ou seja a rotina se perde ainda :

[root@mclaren ~]# /usr/dlc113/bin/proshut /bancos/Producao/totvs12/eai -C list |awk -F " " 
'{print $8" "$6"
"$1}'|grep -v tty|sort | grep joanesetin |awk '{print $1}'| sort -u
joanesetin

[root@mclaren ~]# /usr/dlc113/bin/proshut /bancos/Producao/totvs12/eai -C list |awk -F " " 
'{print $8" "$6"
"$1}'|grep -v tty|sort | grep joanesetin |awk '{print $3}'| sort -u
105
90

Dai a rotina se perde e nao derruba ninguém ;(, alguma luz ?

_________________
Cordialmente;

Kleyton Maia

--------------------------------------------------------------------------------------------------------------
*De:* "Diogo Aguiar address@hidden [shell-script]" <address@hidden>
*Para:* address@hidden
*Enviadas:* Sexta-feira, 25 de Novembro de 2016 13:59
*Assunto:* Re: [shell-script] retorno de comando para variavel


Kleyton.

Fiz uns testes no banco progress que tenho internamente aqui na empresa e 
sugiro que coloque o sort no final
/usr/dlc113/bin/proshut /bancos/Producao/totvs12/eai -C list |awk -F " " '{print $8" 
"$6" "$1}'|grep -v
tty|sort | grep joao |awk '{print $1}'
joao
joao

/usr/dlc113/bin/proshut /bancos/Producao/totvs12/eai -C list |awk -F " " '{print $8" 
"$6" "$1}'|grep -v tty |
grep joao |awk '{print $1}'| sort -u
joao
joao

n

2016-11-25 13:39 GMT-02:00 Kleyton Maia address@hidden <mailto:address@hidden>
[shell-script] <address@hidden <mailto:address@hidden>>:

    __

    Boa tarde,

    Mestre julio entendi poderia ter explicado melhor me desculpe, é o segundo 
caso que como você escreveu:

    ele retorna assim:

    prompt$comando
    joao
    joao
    promptt$


    [root@mclaren ~]# /usr/dlc113/bin/proshut /bancos/Producao/totvs12/eai -C list |awk -F 
" " '{print $8"
    "$6" "$1}'|grep -v tty|sort | grep joao |awk '{print $1}'
    joao
    joao
    [root@mclaren ~]#



    Obrigado!

    _________________
    Cordialmente;

    Kleyton Maia

    
--------------------------------------------------------------------------------------------------------------
    *De:* "'Julio C. Neves' address@hidden <mailto:address@hidden> 
[shell-script]"
    <address@hidden. br <mailto:address@hidden>>
    *Para:* "address@hidden. br <mailto:address@hidden>"
    <address@hidden. br <mailto:address@hidden>>
    *Enviadas:* Sexta-feira, 25 de Novembro de 2016 11:41
    *Assunto:* Re: [shell-script] retorno de comando para variavel


    Mande um exemplo completo de retorno para podermos avaliar a resposta.

    Se vc tem, como diz, "joa joao", é mais complicado, mas se vc tem "joao 
joao" é mole:

    $ echo joao joao | tr ' ' '\n' | sort | uniq
    joao

    Mas se sua saída for:
    joao
    joao

    Nem precisa do tr, mas se for joao da silva joao da silva, complica.

    Como vc vê, cada caso é um caso. Então sem um exemplo real, fica difícil


    Abcs,
    Julio
    *@juliobash*
    *
    Próximos cursos de Shell*
    *Cidade        LocalPeríodo*
    **
    ​
    *São Paulo 4Linux 
<https://www.4linux.com.br/curso/programacao-em-shell-script>05*
    *-09/12*
    **
    Dou treinamento de /Shell/em qualquer cidade.
    Para mais detalhes, me mande um e-mail <mailto:address@hidden>.


    2016-11-25 11:20 GMT-02:00 Kleyton Maia address@hidden 
<mailto:address@hidden>
    [shell-script] <address@hidden. br <mailto:address@hidden>>:

        __

        Bom dia ,

        Pessoal tenho um script que derruba usuários do banco progress em linux,
        Ele funciona corretamente para 01 conexão. Porem por vezes quando o 
usuário tem mais de 01 conexão
        esse comando me retorna o nome do usuário duas vezes e com isso ele não 
derruba ninguém... pois fica
        "joa joao" que é diferente de "joao"

        Ex:
        dlc= comando para derrubar
        banco = nome do banco
        nome = nome do usuario que digitou

        unomebanco=$("$dlc" "$1"/"$banco" -C list |awk -F " " '{print $8" "$6" 
"$1}'|grep -v tty|sort | grep
        $nome |awk '{print $1}')

        A pergunta seria como fazer pra esse awk me retornar somente 01 nome e 
nao os dois que ele acha nas
        conexões ?

        Obrigado pela força.

        _________________
        Cordialmente;

        Kleyton Maia








--------------------------------------------------------------------------------------------------------------
Enviado por: Kleyton Maia <address@hidden>
--------------------------------------------------------------------------------------------------------------


reply via email to

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