GAWK пропуск пустого значения при печати
Всем привет! Есть скрипт:
lsblk -f $4 | gawk '
BEGIN { ORS = ""; print "{\"data\": ["}
/MOUNTPOINT/ {next}
/boot/ {next}
# // {next}
{ printf "%s{\"{#MOUNTPOINT}\": \"%s\"}",
separator, $4
separator = ", "
}
END { print "]}" }
'
Он возвращает список точек монтирования:
{"data": [{"{#MOUNT}": ""}, {"{#MOUNT}": ""}, {"{#MOUNT}": "/"}, {"{#MOUNT}": "[SWAP]"}, {"{#MOUNT}": "/home"}, {"{#MOUNT}": ""}]}
Некоторые записи нулевые и их как то нужно пропускать, никак не пойму как их реализовать, подскажите пожалуйста! Спасибо!
Ответы (1 шт):
Автор решения: user2244399
→ Ссылка
Попробуйте
lsblk -f $4 | gawk '
BEGIN { ORS = ""; print "{\"data\": ["}
/MOUNTPOINT/ {next}
/boot/ {next}
# // {next}
{ if ($4) {printf "%s{\"{#MOUNTPOINT}\": \"%s\"}",
separator, $4
separator = ", "}
}
END { print "]}" }
'