AWK увеличение счетчика

Всем привет, есть скрипт который выводит имена сетевых интерфейсов в json формате, нужно чтобы к каждой строке печатался номер. Скрипт:

cat /proc/net/dev $1  | gawk '
    BEGIN { ORS = ""; print " [ "}
    /Inter-/ {next}
    /face/ {next}
    /lo/ {next}
    { printf "%s{\"#IF\": \"%s\"}",
          separator, $1
      separator = ", "
    }
    END { print " ] " }
'

Вывод:

[ {"#IF": "eth0:"}, {"#IF": "lo:"}, {"#IF": "eth0:"} ] 

Нужно так:

[ {"#IF0": "eth0:"}, {"#IF1": "eth1:"}, {"#IF2": "lo:"} ] 

Ответы (1 шт):

Автор решения: Ainar-G

Так добавьте его:

BEGIN { ORS = ""; print " [ "; i = 0; }

/Inter-/ { next }

/face/ { next }

/lo/ { next }

{
    printf "%s{\"#IF%d\": \"%s\"}", separator, i, $1;
    separator = ", ";
    i++;
}

END { print " ] "; }
→ Ссылка