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: Humberto Pereira
Subject: Re: [shell-script] Bem que matutei mas nao saiu !!!!
Date: Thu, 20 Oct 2005 17:30:58 -0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050923 Debian/1.7.12-0ubuntu05.04

Caro,

        isso eh um tipico problema com o IFS (Internal Field Separator).
Ele q diz qual eh a regra de separacao p/ cada elemento qdo vc faz um for.

No seu caso, basta setar o IFS com \n, e ele pegara a linha inteira,
como o grep.

[]s
Humberto Pereira

Franklin Anderson de Oliveira Souza wrote:
> 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
> ---------------------------------------------------------------------
>  
> Links do Yahoo! Grupos
> 
> 
> 
> 
>  
> 
> 
> 
> 



reply via email to

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