Usando o Awk para analisar linhas individuais

0

Aqui está a saída do qacct -o

Total : OWNER WALLCLOCK UTIME STIME CPU MEMORY IO IOW         ========================================================================================================================= 
Total : adeluca 1947 45.550 8.325 53.875 3.079 17.268 0.000 
Total : athardin 1 0.039 0.056 0.095 0.000 0.000 0.000 
Total : axelsone 35398815 34902115.362 37631.812 34939747.173 33441742.534 11432.294 0.000 
Total : bfinley 1875 6654.039 108.112 6762.151 2867.369 33.136 0.000 
Total : bihe 12018070 6479035.116 1168497.282 7647532.398 4463769.624 478955.800 0.000 
Total : brogers 108710282 108181275.073 46824.068 108228099.141 1741423.539 2.129 0.000 
Total : ckbui 10 0.006 0.006 0.012 0.000 0.000 0.000 
Total : ctokheim 114192 15177.837 460.056 15898.657 11150.583 208.076 0.000 
Total : dliang 6483476 8023175.362 80187.624 13133457.012 12167904.607 472.620 0.000 
Total : gaolong 3395364 3382687.178 5792.021 3388479.200 6904718.986 11.328 0.000 
Total : htrn 1 0.016 0.006 0.022 0.000 0.000 0.000 

Agora eu tenho

qacct - o | awk 'NR>2 print {$1}'

O objetivo disso é puxar os nomes de usuários individuais assim:

adeluca
athardin
axelsone
bfinley
bihe
brogers
ckbui
ctokheim
dliang
gaolong
htrn

O que eu quero é poder analisar a lista e, para cada usuário, poder retirar cada usuário individual para colocar em outro arquivo que exija seu nome de usuário.

Por exemplo.

~ / qacct.monthly adeluca

Então, o que eu quero, em última análise, é poder analisar o qacct -o, obter os usuários individuais e poder chamar algo como

~ / qacct.monthly $ users

Para que eu não precise colocar manualmente os usuários individuais todas as vezes.

    
por Jeff 04.04.2012 / 19:31

1 resposta

2
for i in 'qacct - o | awk 'NR>2 print {$1}''
do
  ~/qacct.monthly $i
done
    
por 05.04.2012 / 16:04

Tags