Batch file 如何使用1个psql在1个批处理文件中执行多个命令?

Batch file 如何使用1个psql在1个批处理文件中执行多个命令?,batch-file,psql,Batch File,Psql,我试图运行一个批处理文件来执行psql shell中的许多命令 我正在使用Postgres 11.4版 这是我的代码: @ECHO OFF "C:\Program Files\PostgreSQL\11\bin\psql.exe" "dbname=databasename host=hostname user=username password=@bcd1234 port=5432 sslmode=require" DELETE from my_table1; DELETE from my_t

我试图运行一个批处理文件来执行psql shell中的许多命令

我正在使用Postgres 11.4版

这是我的代码:

@ECHO OFF
"C:\Program Files\PostgreSQL\11\bin\psql.exe" "dbname=databasename 
host=hostname user=username password=@bcd1234 port=5432 sslmode=require"
DELETE from my_table1;
DELETE from my_table2;
DELETE from my_table3;
PAUSE

我希望脚本删除3个表中的所有数据,但它只运行登录Postgres的第一个命令行。

您可以通过从一个文件执行多个命令来执行它们

  • 创建一个文件并在其中写入所有命令
  • 使用
    -f
    选项传递文件作为命令源

  • 请参阅:(
    -f
    选项)

    是的。它对我有用。谢谢你,阿努拉格。我的代码是@echo off SET PGPASSWORD=@bcd1234“C:\Program Files\PostgreSQL\11\bin\psql.exe”-h hostname-U username-d databasename-p 5432-a-f“d:\testscript.sql”