Batch file 格式化数据库详细信息的批处理输出
set/p=%date%%ComputerName%C:\zz\aaa.rpt “%BinPath%\psql.exe”-h%PGHOST%-p%PGPORT%-U%PGUSER%--dbname”%PGDATABASE%--tuples only--command=“选择datname作为DB_name,pg_size_pretty(pg_database_size(datname))作为pgu数据库中的DB_size,其中datname不在('template0','template1');”>>C:\zz\aaa.rpt 我收到订单: 2021年5月24日星期一MY-PC博士后12 MB abc | 13 MB 我希望o/p为: 2021年5月24日星期一MY-PC博士后12 MBBatch file 格式化数据库详细信息的批处理输出,batch-file,formatting,Batch File,Formatting,set/p=%date%%ComputerName%C:\zz\aaa.rpt “%BinPath%\psql.exe”-h%PGHOST%-p%PGPORT%-U%PGUSER%--dbname”%PGDATABASE%--tuples only--command=“选择datname作为DB_name,pg_size_pretty(pg_database_size(datname))作为pgu数据库中的DB_size,其中datname不在('template0','template1');
2021年5月24日星期一MY-PC abc | 13 MB我想您正在寻找稳定的输出。您可以在postgresql查询中使用shell环境变量,如下所示:
echo[|set /p=> C:\zz\aaa.rpt
set "LOCALV_DATE_PC=%date% %ComputerName%"
"%BinPath%\psql.exe" -h %PGHOST% -p %PGPORT% -U %PGUSER% --dbname "%PGDATABASE%" --tuples-only
--command="select '%LOCALV_DATE_PC%' as PC_ref, datname as DB_name,
pg_size_pretty(pg_database_size(datname)) as DB_size
from pg_database where datname not in ('template0','template1');">>C:\zz\aaa.rpt
你昨天问了这个问题,并得到了如何实现这一目标的建议。我们不会为你做任何事,我们希望你努力。请听从别人给你的建议。