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

Re: Ajuda com awk



Você pode fazer assim:

# variavel=`ps -ef  |grep "processo-x" |awk '{print $1}'| xargs`

Com o xargs você pode pegar valores do stdin e passá-los como argumento para outros programas, sem nenhum argumento ele faz exatamente o que você quer, mas basicamente você consegue fazer muita coisa utilizando esta combinação, para arumentos posicionais você pode utilizar, por exemplo: xargs -I{} echo {}, significa que para cada valor ele irá executar um "echo" com aquele valor como argumento, não utilizando esta opção ele irá passar tudo como argumento, como o exemplo acima.

A[]'s

--- Em seg, 18/4/11, Jackson Rodrigo Braga <jacksonrb@gmail.com> escreveu:

De: Jackson Rodrigo Braga <jacksonrb@gmail.com>
Assunto: Ajuda com awk
Para: "Debian List" <debian-user-portuguese@lists.debian.org>
Data: Segunda-feira, 18 de Abril de 2011, 10:18

Bom dia a todos.
Preciso de uma ajudinha rapida.
Tenho como usar o awk para alem de mostrar uma coluna, também mostrar apenas uma linha dos resultados?
 
Segue exemplo:
 
# ps -ef  |grep "processo-x" |awk '{print $1}'
 
Porém o "processo-x" possui 4 instancias, entao a saida é:
 
# ps -ef  |grep "processo-x" |awk '{print $1}'
user1
user1
user1
user1
#
 
Mas como preciso usar a saida desse comando para criar uma variavel que posteriormente será usada numa condição de teste, eu precisaria de um valor só. Da forma acima a variavel fica:
 
echo $variavel
user1 user1 user1 user1
 
Em resumo, preciso de um paramentro do awk para que alem da coluna 1, ele também só mostre a primeira linha.
 
Alguem pode me ajudar?

Reply to: