gpt4 book ai didi

bash - 如何在 bash 脚本中使用参数名称作为变量

转载 作者:行者123 更新时间:2023-11-29 09:35:34 25 4
gpt4 key购买 nike

我正在尝试编写一个允许连接到各种服务器的脚本,例如

#!/bin/bash
# list of servers
server1=10.10.10.10
server2=20.20.20.20
ssh ${$1}

我想像这样运行它:

sh connect.sh server1

无法弄清楚如何将参数的名称用作变量。数组在我的 Ubuntu 上也不起作用。

最佳答案

像这样使用 shell 间接寻址:

x=5
y=x
echo ${!y}
5

对于您的脚本,以下工作:

#!/bin/bash
# list of servers
server1=10.10.10.10
server2=20.20.20.20

arg1="$1"
ssh ${!arg1}

关于bash - 如何在 bash 脚本中使用参数名称作为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19378568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com