このフォーラムで検索して別のコードを試していますが、うまく動作しないようです。
変数があります。
ip="192.168.1.227 192.168.1.205 192.168.1.217"
いいえ、各IPアドレスを異なる変数に分割したいと思います。
ip1=192.168.1.227
ip2=192.168.1.205
ip3=192.168.1.217
言葉で何かをしようとしています。
for ((word in $vds; i=0; i++));
do
echo $word
"ip$i"=$word
done
しかし、私はそれを動作させることはできません。
ベストアンサー1
あなたがそうする可能性はほとんどありません実際に各個々のIP番号に別々の変数を割り当てたいと思います。 IP 番号をアレイに保存すると、管理が簡単になります。
ipnumbers=( $ip )
引用符のないこの使用は、$ip
(変数のデフォルト値を想定してIFS
)その値をスペースに分割し、結果の単語に対してファイル名ワイルドカードを呼び出しますが、データにファイル名ワイルドカードパターンがないため問題ありません。次に、分割された単語を配列の別々の要素として割り当てますipnumbers
。
次に(2番目の要素の場合)を使用して個々の要素にアクセスするか、"${ipnumbers[1]}"
ループを使用して繰り返すことができます。
for ipnum in "${ipnumbers[@]}"; do ...; done