У меня есть требование получить конкретное поле с вывода top
. Как мне это сделать?Разделение поля в верхней команде с использованием awk
У меня
top -b -n 10 -d 10
top - 05:16:04 up 24 days, 49 min, 2 users, load average: 0.00, 0.00, 0.00
Tasks: 494 total, 1 running, 493 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 65971500k total, 4028640k used, 61942860k free, 420512k buffers
Swap: 10485756k total, 0k used, 10485756k free, 1134108k cached
мне требуется время из top
строки, а используется значения из строки Mem
; в этом примере это 05:16:04
и 4028640k
.
Следующая AWK скрипт получает мне поле времени:
{
for (i=1;i<NF;i++) {
if($i~/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/){
print $i
}
}
}
Как извлечь память, используемую?
AWK '{для (я = 1; г
Mani
Каков ваш ожидаемый результат? –
Привет, Хосе, мне требуется 05:16:04 из первой строки и используемой памяти 4028640k, используемой из третьего ряда Mem: для всех экземпляров – Mani