awk를 사용하여 한 줄 구문 분석

awk를 사용하여 한 줄 구문 분석

이것은 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 

지금 나 한테있어

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

이것이 하는 일은 다음과 같은 단일 사용자 이름을 추출하는 것입니다.

adeluca
athardin
axelsone
bfinley
bihe
brogers
ckbui
ctokheim
dliang
gaolong
htrn

내가 원하는 것은 목록을 구문 분석하고 각 사용자에 대해 개별 사용자를 추출하여 사용자 이름이 필요한 다른 파일에 넣을 수 있는 것입니다.

예를 들어.

~/qacct.monthlyadluka

그래서 제가 궁극적으로 원하는 것은 qacct -o를 통해 구문 분석하고 단일 사용자를 확보하고 다음과 같은 것을 호출할 수 있는 것입니다.

~/qacct.monthly $users

이렇게 하면 매번 개별 사용자를 수동으로 입력할 필요가 없습니다.

답변1

for i in `qacct - o | awk 'NR>2 print {$1}'`
do
  ~/qacct.monthly $i
done

관련 정보