Linux 我试图在bash中创建多行变量,但遇到错误;查找匹配的`)和#x27&引用;
我试图用bash编写函数。该函数的输入是主机的ip地址。函数应该ssh到主机并在远程主机上运行多个命令 我定义了多行变量,但出现以下错误 ./RCAatuo.sh:第8行:在查找匹配的`)时出现意外的EOF ./RCAatuo.sh:第14行:语法错误:文件意外结束Linux 我试图在bash中创建多行变量,但遇到错误;查找匹配的`)和#x27&引用;,linux,bash,Linux,Bash,我试图用bash编写函数。该函数的输入是主机的ip地址。函数应该ssh到主机并在远程主机上运行多个命令 我定义了多行变量,但出现以下错误 ./RCAatuo.sh:第8行:在查找匹配的`)时出现意外的EOF ./RCAatuo.sh:第14行:语法错误:文件意外结束 loginvCUvDU() { 回声hellow HostIpv6=$1 echo$HostIpv6 su_cmd=“$(cat在表面上没有必要嵌入,如果你正确格式化了你的代码,它会有帮助。阅读你的文章,它会作为一条长线通过。此外,
loginvCUvDU()
{
回声hellow
HostIpv6=$1
echo$HostIpv6
su_cmd=“$(cat在表面上没有必要嵌入,如果你正确格式化了你的代码,它会有帮助。阅读你的文章,它会作为一条长线通过。此外,你不能在var=
和赋值右边的值之间有空格。也就是说,var=$(buildAValue)
和var=$(buildAValue)
是两个完全不同的命令,只有第一个命令在单行范围外更改var
。我不清楚您在这里的意思。@CharlesDuffy感谢您指出制表符/空格行为。从这个问题很难判断代码是否使用制表符或空格进行缩进。
loginvCUvDU()
{
echo hellow
HostIpv6=$1
echo $HostIpv6
# Multiline constant
su_cmd="
echo ----------hi----
echo ----------CMD2----
"
sshpass -p $vDUvCUPass ssh -tt vm-root@$HostIpv6 "$su_cmd"
}
su_cmd="$(cat <<EOF
echo ----------hi----
EOF
)"