bash - 通过ssh传递变量

标签 bash ssh

我正在尝试编写一个脚本来登录到多个远程服务器并在每个服务器中执行一个脚本。 但是,我想通过 ssh 传递一个变量。像这样:

var="/home/dir/"

  ssh -T $mchname <<'ENDSSH'    
    $var"run_script" < input > output &    
ENDSSH

这种幼稚的尝试是行不通的($var 只是 null)。正确的语法是什么?提前致谢。

最佳答案

删除 ENDSSH 周围的引号。它们防止在 here document 中扩展变量.

关于bash - 通过ssh传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11277799/

相关文章:

git 无法在 azure devops 管道中使用 ssh 克隆子模块

linux - 如何通过多个 sudo 和 su 命令找到原始用户?

子 shell 中的 Bash 描述符

bash - 包含重定向标准输入的程序的控制台输出?

linux - 如何保持与 paramiko 的 session

linux - ybash 使用 syslog 文件格式中的最新日期

linux - 如何编写 shell 脚本来与计算机建立 ssh 连接并继续该计算机上的剩余脚本

git - 如何使用 ssh 在 puppet 中使用 vcsrepo 设置和 checkout git 存储库

regex - Bash for 循环打印出意外的输出,这是为什么?

bash - 删除除 4 个最新目录之外的所有目录