ssh 配置文件可以从另一个文件读取吗?

时间:2021-04-16 19:32:42

标签: bash ssh

我想修改我的 ~/.ssh/config 文件,以便它从文本文件中读取 IP 地址。例如:

Host prod-app
    HostName ip-address-here
    User root
    Port 22
    IdentityFile ~/.ssh/my-key

由于我的 EC2 实例在部署后具有不同的公共 IP 地址,我试图找出一种方法,我可以简单地从文本文件中读取该地址。所以而不是上面,它看起来像这样:

Host prod-app
    HostName $(cat $HOME/Documents/app_prod.txt)
    User root
    Port 22
    IdentityFile ~/.ssh/my-key

由于以下错误,这不起作用:

/Users/nutella/.ssh/config line 33: garbage at end of line; "$HOME/Documents/app_prod.txt)"

是否有一种简单的方法来完成这项工作,或者有更好的方法?

1 个答案:

答案 0 :(得分:3)

您可以使用包含语句:

Host prod-app
    include ~/Documents/app_prod.txt
    User root
    Port 22
    IdentityFile ~/.ssh/my-key

app_prod.txt:

HostName  192.0.2.1
相关问题