Utilisez fonctionnalité d'interpolation variable en psql.
Si vous spécifiez -v variable1=value1
ou --set variable1=value1
paramètre sur la ligne de commande, puis :variable1
dans le fichier sql sera remplacé par la valeur de texte correspondante.
Remarque :utilisez des chaînes entre guillemets SQL standard si vous avez besoin de guillemets, d'espaces, etc.
Exemple :
echo "SELECT :arg1 FROM :arg2 LIMIT 10;" > script.sql
psql mydatabase -v arg1=relname -v arg2=pg_class < script.sql
psql mydatabase -v arg1="'some string' as label" -v arg2=pg_namespace < script.sql