使用引号内的引号通过 bat 内的 plink 执行 psql
Posted
技术标签:
【中文标题】使用引号内的引号通过 bat 内的 plink 执行 psql【英文标题】:Executing psql through plink within a bat using quotes within quotes 【发布时间】:2020-02-20 06:46:48 【问题描述】:这个在 bat 中执行的简单更新不起作用。
@echo off
plink -pw passcode user@192.168.10.110 "psql -U sa DATABASE -c 'update users set username = 'Last_Name' where iduser = 12345'"
这个想法是从他的命令行在远程 linux 服务器中执行 psql 更新。我知道问题与如何将引号设置为分配给 char 列 username 的 char 值 Last_Name 有关,但我不知道正确的转义字符序列。
【问题讨论】:
你的转义序列很好。在 " (双引号) 中,您可以随意使用 ' (单引号)。 【参考方案1】:使用反斜杠字符转义 sql
字符串。
@echo off
plink -pw passcode user@192.168.10.110 "psql -U sa DATABASE -c \"update users set username = 'Last_Name' where iduser = 12345\""
【讨论】:
以上是关于使用引号内的引号通过 bat 内的 plink 执行 psql的主要内容,如果未能解决你的问题,请参考以下文章