我正在使用kubernetes,希望只过滤PostgreSQL上的sampledb。
我尝试使用这个命令:
kubectl exec podname-89tq4763k23-klp83 -- bash -c "psql -U postgres --tuples-only -P format=unaligned -c "SELECT datname FROM pg_database WHERE NOT datistemplate AND datname <> 'postgres'";"
字符串
但是它没有显示终端的任何输出,我的期望是它应该显示sampledb作为输出
尝试使用此命令列出所有数据库名称,并且它正在工作。
kubectl exec -it podname-89tq4763k23-klp83 -- psql -U postgres -c "\l"
型
我的问题是如何从数据库列表中只过滤sampledb名称?
List of databases
Name | Owner | Encoding | Collate | Ctype | ICU Locale | Locale Provider | Access privileges
-------------+----------+----------+------------+------------+------------+-----------------+-----------------------
sampledb | postgres | UTF8 | en_US.utf8 | en_US.utf8 | | libc |
postgres | postgres | UTF8 | en_US.utf8 | en_US.utf8 | | libc |
template0 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
(4 rows)
型
注意:我还计划使用这个kubectl命令,如果它可以作为我的bash脚本的变量。
1条答案
按热度按时间wmtdaxz31#
我觉得你的命令需要修改一下引用。
字符串
试试这个:
型