我通常不会在多个 ssh 跃点上尝试此操作,但由于限制,这是我唯一的选择。
我正在尝试运行以下远程命令,它可以像这样正常工作:
ssh -i ~/.ssh/host-rsync-key user\@server1 "'sed -i /ADD_NEW_BELOW/a <server>domain</server>' /config.xml"
添加第二个 ssh 跃点,我认为 shell 正在剥离一些东西,导致这个命令永远不会在 server2 上执行,而是似乎在 server1 上执行。
ssh -A -t -o -i ~/.ssh/host-rsync-key user\@server1 ssh -A -o -i ~/.ssh/host-rsync-key user2\@server2 "'sed -i /ADD_NEW_BELOW/a <server>domain</server>' /config.xml"
任何人都可以提供有关此 sed 命令通过 ssh 所需的正确转义的帮助吗?我可以在 2 跳上运行 grep 命令没问题,所以我认为这是特定于与 sed 命令相关的转义字符。
任何帮助将不胜感激