linux for 字符串变量,在Linux中在bash shell中的for循环中连接字符串变量

我有一个文件config.ini,其中包含以下内容:

@ndbd

ip_ndbd=(108.166.104.204 108.166.105.47 108.166.56.241)

ip_temp=""

for ip in $ip_ndbd

do

ip_temp+="\n\[ndbd\]\nHostname=$ip\n"

done

perl -0777 -i -pe "s/\@ndbd/$ip_temp/" /var/lib/mysql-cluster/config.ini

基本上,我只想以特定格式获取所有IP地址,[email protected]

但是,我的for循环似乎并没有连接$ip_ndbd中的所有数据,只是列表中的第一项.

所以不要得到:

[ndbd]

HostName=108.166.104.204

[ndbd]

HostName=108.166.105.47

[ndbd]

HostName=108.166.56.241

我越来越:

[ndbd]

HostName=108.166.104.204

我很确定有更好的方式来写这个,但我不知道怎么做.

我很感激一些帮助.

提前致谢.

如果要迭代数组变量,则需要指定整个数组:

ip_ndbd=(108.166.104.204 108.166.105.47 108.166.56.241)

ip_temp=""

for ip in ${ip_ndbd[*]}

do

ip_temp+="\n\[ndbd\]\nHostname=$ip\n"

done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值