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

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

Re: [shell-script] Bem que matutei mas nao saiu !!!!


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Bem que matutei mas nao saiu !!!!
Date: Thu, 20 Oct 2005 17:30:03 -0200

Aspas... as boas e velhas aspas...

for i in "`ps aux | grep bash`" ; do echo "$i" ; done

Por que ? humm veja vem, se vc faz

for i in 1 2 3 4 5 ... vc separa os argumentos por " "... mas se vc
substitui por um comando que retorna coisas  separadas por espaço,
como saber o que é espaço pra ser impresso e espaço que separa um item
do outro ?

isso explica o primeiro par de aspas. acho no echo "$i" vc precisa
dizer "tudo isso é uma linha, depois vem outra".

Manda bala. Pra facilitar a leitura troca `comando` por $(comando)

Em 20/10/05, Franklin Anderson de Oliveira Souza<address@hidden> escreveu:
>  E ae turma, to fazendo um programinha aqui e sempre me esbarro com o
>  seguinte problema.
>
>  Se digitarmos "ps aux" teremos os processos da maquina listados ..... algo
> como:
>
>  $ ps aux
>  root      3016  0.0  0.2  4684  580 ?        Ss   14:03   0:00
>  /usr/bin/X11/xfs -daemon
>  root      3116  0.0  0.4  2804 1056 ?        S    14:03   0:00
>  /bin/bash /etc/rc2.d/S20xprint start
>  root      3117  0.0  0.4  2804 1056 ?        S    14:03   0:00
>  /bin/bash /etc/rc2.d/S20xprint start
>  root      3120  0.0  0.4  2804 1056 ?        S    14:03   0:00
>  /bin/bash /etc/rc2.d/S20xprint start
>  franklin  3168  0.0  0.9  6196 2260 ?        Ss   14:03   0:00
>  /usr/sbin/famd -T 0
>
>  Mas  o script que segue abaixo teria que produzir o mesmo resultado
>
>  #!/bin/bash
>
>  for i in `ps aux |grep $1`
>  do
>          echo $i
>  done
>
>  $ programa.sh xterm   (exemplo funcional)
>
>  No meu humilde conhecimento, teriamos que ter o mesmo resultado mas
>  ele  atribui um "\n" para cada espaço encontrado em cada linha da
>  saida do comando
>  "ps aux |grep <parametro>".
>
>  Por exemplo, rodando
>
>  $ ps aux | grep xterm
>
>  temos como saida:
>
>  franklin  4962  0.0  1.2  6652 3048 ?        S    14:52   0:00 xterm
>  franklin  4965  0.0  1.5  6792 3816 ?        S    14:52   0:01 xterm
>  franklin 12050  0.0  0.3  1860  744 pts/2    R+   17:13   0:00 grep xterm
>
>  mas pelo o programa teremos:
>
>  $ ./programa.sh
>
>  franklin
>  4962
>  0.0
>  1.2
>  6652
>  3048
>  ?
>  S
>  14:52
>  0:00
>  xterm
>  -bg
>  black
>  -fg
>  white
>  -fa
>  monospace
>  -fs
>  11
>  -cr
>  red
>  -hc
>  white
>  -geometry
>  80x20
>  franklin
>  .
>  .
>  .
>  .
>  .
>
>  E assim por diante ...
>
>
>  Qualquer dica eh bem vinda galera ....
>
>
>  valeu
>
>
>  franklin anderson de oliveira souza
>
>
> ---------------------------------------------------------------------
>  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
> ---------------------------------------------------------------------
>
>
>
>
>  Yahoo! Grupos, um serviço oferecido por:
>
>  ________________________________
>  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:
> address@hidden
>
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.


reply via email to

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