psql variables
I use a bash script (similar to following example) to update tables.
psql -v passed_in_var=\'some_value\' -f script_name ....
Is it possible to pass a value back from psql to the bash script?
Thanks,
Paul Cunningham
On Mon, 14 Mar 2005 11:06:32 -0500, Paul Cunningham
<paul@blueseacommunications.com> wrote:
I use a bash script (similar to following example) to update tables.
psql -v passed_in_var=\'some_value\' -f script_name ....
Is it possible to pass a value back from psql to the bash script?
You can use '\! [ command ]' to execute shell commands within psql.
This may not be what you want though.
George Essig
In article <4235B688.8000407@blueseacommunications.com>,
Paul Cunningham <paul@blueseacommunications.com> wrote:
% I use a bash script (similar to following example) to update tables.
%
% psql -v passed_in_var=\'some_value\' -f script_name ....
%
% Is it possible to pass a value back from psql to the bash script?
If you run it like this
$(psql -v passed_in_var=\'some_value\' -f script_name)
and arrange for all the script output to be in the form
var1="value 1" var2="value 2"
var3="value 3" ...
then var1, var2, etc will be set in bash (or ksh, or the posix shell).
Note that there are no spaces around the equals signs.
--
Patrick TJ McPhee
North York Canada
ptjm@interlog.com
On Fri, 25 Mar 2005, Patrick TJ McPhee wrote:
In article <4235B688.8000407@blueseacommunications.com>,
Paul Cunningham <paul@blueseacommunications.com> wrote:
% I use a bash script (similar to following example) to update tables.
%
% psql -v passed_in_var=\'some_value\' -f script_name ....
%
% Is it possible to pass a value back from psql to the bash script?If you run it like this
$(psql -v passed_in_var=\'some_value\' -f script_name)
and arrange for all the script output to be in the form
var1="value 1" var2="value 2"
var3="value 3" ...then var1, var2, etc will be set in bash (or ksh, or the posix shell).
Note that there are no spaces around the equals signs.
btw, how to expand psql variable in -c "" ?
For example, this works as expected
psql discovery-test -v a1=\'message_parts\' -f tt.sql
but not
psql discovery-test -v a1=\'message_parts\' -c "select * from iostat where relname=:a1;"
ERROR: parse error at or near ":" at character 36
LINE 1: select * from iostat where relname=:a1;
Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83