Para obter a saída formatada do awk, use printf
:
$ "$ipath"/cli iedge list | awk 'BEGIN { print "------------------------------------"; printf "|%-17s|%-16s|\n","Registration ID", "Ongoing Calls"} /Registration ID/ { id = $3; next } /Ongoing Calls/ {print "------------------------------------"; printf "|%-17s|%-16s|\n",id,$3 } END{print "------------------------------------";}'
------------------------------------
|Registration ID |Ongoing Calls |
------------------------------------
|Nitin_03 |30 |
------------------------------------
|Nitin_01 |0 |
------------------------------------
Se for mais fácil de ler, o seguinte é o mesmo, mas espalhado por várias linhas em um script:
#!/bin/sh
"$ipath"/cli iedge list | awk '
BEGIN { print "------------------------------------";
printf "|%-17s|%-16s|\n","Registration ID", "Ongoing Calls"
}
/Registration ID/ { id = $3; next }
/Ongoing Calls/ {print "------------------------------------"; printf "|%-17s|%-16s|\n",id,$3 }
END{
print "------------------------------------";
}
'
As declarações printf
podem ser ajustadas para obter o formato que você preferir.