正确逃生';在bashsql查询中?

正确逃生';在bashsql查询中?,sql,bash,Sql,Bash,我正在编写一个bash脚本来从postgresql远程数据库收集数据。 一个命令如下所示 count_test=$(ssh ha@110.34.123.10 "psql -U user -d db_name -h localhost -c 'select count(*) from acts where created_date::date = date '2020-08-17'';") 问题是如何转义或正确更改查询 上面的格式显示2020年的语法错误 sql查询是 sel

我正在编写一个bash脚本来从postgresql远程数据库收集数据。 一个命令如下所示

count_test=$(ssh ha@110.34.123.10 "psql -U user -d db_name -h localhost -c 'select count(*) from acts where created_date::date = date '2020-08-17'';")
问题是如何转义或正确更改查询

上面的格式显示2020年的语法错误

sql查询是

select count(*) from acts where created_date::date = date '2020-08-17'
我已尝试使用\进行转义,但这也会引发错误。问题是围绕日期变量需要单引号。

对于本地运行,它是

psql -U user -d db_name -h localhost -c "select count(*) from acts where created_date::date = date '2020-08-17' "
因此,通过ssh,它应该是:

ssh user@host psql -U user -d db_name -h localhost -c " \"select count(*) from acts where created_date::date = date '2020-08-17' \" "

将查询放入文件并使用
-f query.sql
通常是一种更简单的选择。或者使用一个“HERE doc”。那么我如何通过ssh执行它,它是否也需要sqlplus??