我需要远离许多PostgreSQL的奴隶PSQL定时从庆典
比较性能,我找不到写东西像一个好办法:
echo "\timing on select now() ; " | ssh [email protected] "psql foo_db"
一些“-e”尝试回声有些“\”,
我只是得到“时间是”和一些额外的参数“XXXX”忽略
我需要远离许多PostgreSQL的奴隶PSQL定时从庆典
比较性能,我找不到写东西像一个好办法:
echo "\timing on select now() ; " | ssh [email protected] "psql foo_db"
一些“-e”尝试回声有些“\”,
我只是得到“时间是”和一些额外的参数“XXXX”忽略
在我的系统,ssh
不通过标准输入可言,所以我把牛逼他整个管道进入论证。我结束了是这样的:
ssh [email protected] "echo \"\timing on \\\\\ select now();\" | psql foo_db"
的\"
里面的字符串允许在必要时我使用'strings'
在SQL本身。尴尬\\\\\
序列归结如下:
ssh
)减小了每个\\
到\
,给人\\\
,用于echo "timing on \\\ select now();"
echo
)再次降低,以\\
,给timing on \\ select now();
psql
元命令和SQL没有多行,如手册中所述:特殊序列\\(两个反斜杠)标记参数的结尾并继续解析SQL命令(如果有的话)。这样,SQL和psql命令可以自由地混合在一条线上。
一个collegue告诉我:
ssh [email protected] psql foo_db -Atq <<EOT
\timing on
select now();
EOT
真好!有用 :-) – Overnuts