我正在尝试使用 ssh 从本地机器执行到远程机器。我已经设置了 $HN
和 $ManagedServerName
值 - 但是当我执行以下命令时 - $ManagedServerName
变量取空值
ssh $HN 'echo `cd /u01/app/oracle/product/webcenter/sites; find -name "*.ini" -not -path "./Shared/*" -not -path ".logs/*" -exec sed -i 's/TWP/'$ManagedServerName'/g' {} \;
请建议,
谢谢
最佳答案
你的引用是错误的。 echo 之前的单引号被 sed 表达式中的第一个单引号关闭,然后您在 $ManagedServerName 周围打开一个新的单引号,因此另一侧的 shell 试图扩展该变量。尝试:
sed -i "s/TWP/'"$ManagedServerName"'/g"
关于linux - 变量没有传递到远程机器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29255928/