我正在尝试编写PostgreSQL脚本,但在使用shebang行时遇到问题
#! /usr/bin/psql [ psql_args_here ] -f
select now();这会给我一个错误,就好像我刚刚在命令行中输入了没有任何参数的psql。我怎么才能做对呢?
发布于 2010-10-22 18:04:18
问题是psql不会跳过文件的第一行。
你可以试一试
#! /bin/sh
exec sh -c "tail -n +3 $0 | psql -f -"
select now();或者简单地说
#! /bin/sh
psql << E_O_SQL
select now();
E_O_SQL发布于 2018-04-20 03:35:38
还有一个更好的解决方案。第一行应该是:
--() { :; }; exec psql -f "$0"它就像一个普通的shebang #!
http://rosettacode.org/wiki/Multiline_shebang#PostgreSQL
https://stackoverflow.com/questions/3995326
复制相似问题