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

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

Imprimindo linhas enumeradas


From: Leonardo Bernardes
Subject: Imprimindo linhas enumeradas
Date: Thu, 14 Aug 2008 19:32:17 -0300

## Envio novamente pois, pelo costume, não enviei o email em plain
text e imagino que ele não chegará até o grupo

Boa noite, amigos

Tenho uma dúvida, talvez até simples, vou ilustrá-la com um exemplo.
Se eu tenho os seguintes dados de saída:

$ ps aux |grep smplayer
asterion  9058  2.3  2.3  31820 12060 ?        Sl   19:10   0:00 smplayer
asterion  9062  3.0  2.3  31840 12052 ?        Sl   19:10   0:00 smplayer
$ ps aux |grep smplayer > guardar.txt

Os dados contidos nesse arquivo guardar.txt, se eu quiser imprimi-los
na tela, enumerando cada uma das linhas, qual é a melhor opção? Mas
vejam, eu não quero algo como cat -n, gostaria de poder manipular a
forma como os números são exibidos. Eu descobri uma forma, mas
considero ela uma tanto complexa, vejam:

ct=1
mat=$(cat guardar.txt |wc -l)
while [ $ct -le $mat ]; do
       echo -e "($ct): $(cat guardar.txt |awk 'NR == '$ct' { print $0 }')"
       ((ct++))
done

Eu queria aprender a fazer via "for", aí entra outra dúvida, se eu uso
algo como:

for linha in $(cat guardar.txt) # ele retorna cada termo como um
parâmetros posicional "asterion" "9058" ... e assim por diante
se eu uso assim:
for linha in "$(cat guardar.txt)" # ele retornar o bloco inteiro como
um único parâmetro e também não adianta

O "for" serve pra fazer isso que eu quero? é possível fazê-lo imprimir
uma linha de cada vez? Qual é a maneira mais simples de fazer isso?

Desde já agradeço


Leonardo Bernardes
Usuário Linux # 444329
brausen.blogspot.com

reply via email to

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