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 " ] "; }