====== Вывод результата команды в JSON ======
{{indexmenu_n>11}}
Для упрощения разбора результата выполнения команды при интеграции с внешними платформами и WEB предусмотрен вывод в формате JSON
Для этого в команде указывается дополнительный параметр
--outformat json
Для удобства работы с json рекомендуем установить утилиту jq:
yum install epel-release
yum-config-manager --disable epel
yum --enablerepo epel install jq
Примеры
Форматированный вывод результата выполнения команды
fdpi_ctrl list all profile --policing --outformat json|jq .
Посмотреть статистику использования разных профилей полисинга
fdpi_ctrl list all --policing --outformat json|jq '.lpolicings[].description.name'|sort|uniq -c
или тоже самое в формате json средствами jq
fdpi_ctrl list all --policing --outformat json|jq '[{ name: .lpolicings[].description.name, login: .login }] | group_by(.name) | .[] | { name: .[0].name, count: . | length}'
Для последующего применения можно превратить этот вызов в функцию bash
function fdpi_policing_stat() { fdpi_ctrl list all --policing --outformat json|jq '[{ name: .lpolicings[].description.name, login: .login }] | group_by(.name) | .[] | { name: .[0].name, count: . | length}'; }
и потом просто вызывать эту функцию из командной строки
fdpi_policing_stat
Для постоянного использования функций можно сохранить их в файле .bash_profile