有這麼個需求,提供具體的ip位址和埠號
iplist="想要對這些ip、埠進行處理輸出如下的內容172.20.59.238:34994,172.20.59.21:34994,172.20.59.28:34994
"
172.20.59.28那要怎麼做··· ···34994
172.20.59.21
34994
172.20.59.238
34994
我們來簡單的分析下,每個ip、埠號都包含如下的部分
ip資訊那麼我們只要通過乙個迴圈,將這些字串拼接起來,就可以了··· ···埠號
那說幹就幹
我們寫了乙個如下的shell指令碼
#!/bin/bash執行下,看下結果:iplist="
172.20.59.238:34994,172.20.59.21:34994,172.20.59.28:34994
"ipnew1=$
str=""
for i in
$ipnew1
doip=`echo $i|awk -f ":"
''` port=`echo $i|awk -f ":"
''` str="
$ip$port
\n""$str"
done
echo -ne "
$str
"
[root@nctest-snap-test-02 practises]# sh redis-sentinel.sh已經滿足了我們的要求172.20.59.28
34994
172.20.59.21
34994
172.20.59.238
34994
[root@nctest-snap-test-02 practises]#
那我們就再回到具體的實現上,主要有3點:
1、定義乙個原始的字串
str=""這裡,我們定義的是乙個空字串
2、迴圈中實現字串的拼接
這樣多次迴圈後,字串就可以拼接在一起了。
3、顯示中使用echo的-e選項顯示
echo -e "-e選項,就會將其中的\n解析成換行$str
"
另外,在最後乙個輸出之後,缺省會有個換行
如果不想要這個換行,可以使用echo的-n選項
echo -ne "這樣執行之後,最後的換行就沒有了:$str
"
如何在for迴圈中剔除滿足條件的元素
業務開發過程站常常需要在for迴圈中將某個元素剔除,按照常規的思路,就是對陣列進行乙個for迴圈,然後在迴圈裡面進行if判斷,在判斷中刪除掉指定元素即可。但是由於陣列下標的問題,實際情況往往不會像預想的那樣順利執行。如下所示 var arr 1,2,2,3,4,5 for var i 0 i arr...
如何在迴圈中刪除List集合中的元素
一 首先是最基本的for迴圈 for int i 0 iremove 方法刪除元素後會立刻更新list的size,因此index也發生了變化,會導致漏掉某些元素。解決辦法1 在刪除某乙個元素後直接break,當然這種情況只適合刪除乙個特定元素,不適合刪除多個元素。解決辦法2 index回退一位。如下...
Go語言中如何在range迴圈中修改陣列 切片內容
在go語言中,我們經常會使用到range來幫助我們遍歷一些資料,通常情況下都是檢視操作多一些,但是當我們需要對其原位址上的內容進行變更時,通常都是使用 for i 0 i讓資料結構中的元素都儲存為指標型別,這樣在進行修改的時候,就是對位址上的值進行修改,畢竟指標就是乙個位址,拷貝出來的指標仍然指向同...