我有以下內容的文件的config.ini:內串聯字符串變量在bash的循環殼
@ndbd
我想與其他一些文本敲定文件替換@ndbd
。下面是我的bash腳本代碼:
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地址,然後將生成的字符串替換@ndbd
。
但是,我的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
我敢肯定有一個更好的方式來寫這篇文章,但我不知道怎麼辦。
我希望得到一些幫助。
在此先感謝。
該數組更好,您只需要以正確的方式循環它。 – caesarsol 2015-05-15 16:41:30