pgcmd 是非交互式 PostgreSQL 查询工具。它输出 JSON,这意味着可以使用 jq 或 catj 等工具处理和查看结果。
npm install -g pgcmd
pgcmd -h localhost \ -u postgres \ -p p@ssw0rd \ -d postgres \ 'select * from pg_database where datname = $1' \ -m template0
如果未指定脚本,则 pgcmd 从标准输入读取:
echo 'select * from pg_database where datname = $1' | pgcmd -m template0
输出:
[ { "datname": "template0", "datdba": 10, "encoding": 6, "datcollate": "en_US.utf8", "datctype": "en_US.utf8", "datistemplate": true, "datallowconn": false, "datconnlimit": -1, "datlastsysoid": 13066, "datfrozenxid": "562", "datminmxid": "1", "dattablespace": 1663, "datacl": "{=c/postgres,postgres=CTc/postgres}" } ]
支持以下环境变量: