将变量中带有特殊字符的大文本传递到MYSQL时出错

将变量中带有特殊字符的大文本传递到MYSQL时出错,mysql,bash,Mysql,Bash,我有一个与SSH连接到远程主机的脚本,并在那里执行另一个将数据插入本地MySQL数据库的脚本。我传递所有需要插入SSH中的变量。除了$textBody变量外,其他都可以正常工作。我认为问题在于这个变量中有很多文本(包括可能导致错误的特殊字符) 这是我得到的错误: jailshell: -u: command not found ERROR at line 1: Unknown command '\S'. 如果我在他的位置传递另一个不同于$textBODY的变量,则不会发生错误 我在变量中传递双

我有一个与SSH连接到远程主机的脚本,并在那里执行另一个将数据插入本地MySQL数据库的脚本。我传递所有需要插入SSH中的变量。除了$textBody变量外,其他都可以正常工作。我认为问题在于这个变量中有很多文本(包括可能导致错误的特殊字符)

这是我得到的错误:

jailshell: -u: command not found
ERROR at line 1: Unknown command '\S'.
如果我在他的位置传递另一个不同于$textBODY的变量,则不会发生错误

我在变量中传递双引号

如果
$textBODY
不包含单引号
,则可以使用它们:

ssh -p 22 $user@$IP_ADDRESS "$SCRIPTMYSQL \"$taulaName\" \"$valueType\" \"$valueTitle\" '$textBODY' exit"
(当然,这也适用于其他变量)

我在变量中传递双引号

如果
$textBODY
不包含单引号
,则可以使用它们:

ssh -p 22 $user@$IP_ADDRESS "$SCRIPTMYSQL \"$taulaName\" \"$valueType\" \"$valueTitle\" '$textBODY' exit"

(当然,这也适用于其他变量)。

什么是
jailshell
?这是你在那台机器上的登录shell吗?变量的内容是什么?它们中有没有包含双引号?监狱地狱我想是因为我在一个共享主机中,他们在运行监狱。别担心。是的,我在变量中传递双引号。什么是
jailshell
?这是你在那台机器上的登录shell吗?变量的内容是什么?它们中有没有包含双引号?监狱地狱我想是因为我在一个共享主机中,他们在运行监狱。别担心。是的,我在变量中传递双引号。什么是
jailshell
?这是你在那台机器上的登录shell吗?变量的内容是什么?它们中有没有包含双引号?监狱地狱我想是因为我在一个共享主机中,他们在运行监狱。别担心。是的,我在变量中传递双引号。