任何人说这是一个坏主意,这实际上是一个合理的方法来处理这样的事情。Inb4。我正在编写这个Docker容器,它可以通过Docker中包含的OpenVPN连接执行用户提供的命令,例如docker run vpntunnel curl example.com。因此,这里合理的方法是让入口点脚本正确地转义用户提供的CMD行,并将整个过程作为一个参数传递给OpenVPN的--up选项。如果我的Docker镜像需要在隧道建立之后和执行用户命令行之前执行一些初始化,我可以在用户提供
我已经看到了关于需要将参数双转义到远程ssh命令的问题和答案。我的问题是:第二个解析是在什么地方、什么时候完成的?将命令行参数解析为远程命令,因此似乎没有必要重复引用或转义(但它确实是必要的)。如果我首先在那里使用ssh并获得一个登录shell,然后运行pstree -a -p,则在输出中可以看到以下内容: │ └─sshd,3733