寻找匹配的 `'' 时出现意外的 EOF

unexpected EOF while looking for matching `''

我在脚本下面 运行 遇到错误

#!/bin/bash
webproxy="webproxy-test-01"
webproxycurl="curl -k -s https://localhost:${nginx_https_port}/HealthCheckService"
sudo docker exec $webproxy sh -c \'$webproxycurl\'

这是错误。

-k: -c: line 0: unexpected EOF while looking for matching `''
-k: -c: line 1: syntax error: unexpected end of file

这是适用于 shell 提示符

的命令
$sudo docker exec webproxy-test-01 sh -c 'curl -k -s https://localhost:${nginx_https_port}/HealthCheckService'
HEALTHCHECK_OK

有人可以帮我解决这个错误吗?任何帮助将不胜感激。

尝试使用:

sudo docker exec $webproxy sh -c "$webproxycurl"

此外,作为旁注,不要在 sudo.

中 运行 docker
  • 添加 docker 组(如果尚不存在):

     sudo groupadd docker
    
  • 将连接的用户“$USER”添加到 docker 组。如果您不想使用当前用户,请更改用户名以匹配您的首选用户:

     sudo gpasswd -a $USER docker
    
  • 执行 newgrp docker 或记录 out/in 以激活对组的更改。

  • 可以使用

     docker run hello-world
    

    检查是否可以 运行 docker 不使用 sudo。

查看 this answer 了解更多详情。