我正在尋找一種更有效的方式來從用戶獲取IP地址,將IP地址拆分成數組,敲掉最後一個字節,替換爲特定數字,然後將數組加回到新的IP地址。從用戶輸入獲取IP地址,生成3個其他靜態IP
例如:用戶輸入IP:10.1.1.50。從這個輸入中,我取前3個八位字節,然後生成10.1.1.1,10.1.1.10和10.1.1.11。我可以程序化地做到這一點,但似乎我做了相同的操作3次迭代,一個函數可能是有益的,但我的嘗試失敗。
$ip= $(read-host "Enter any IP Address")
$gateway = $ip.split('.')
$gateway[-1] = 1
$gateway = $ipArray -join '.'
$dns1 = $ip.split('.')
$dns1[-1] = 10
$dns1 = $dns1 -join '.'
$dns2 = $ip.split('.')
$dns2[-1] = 11
$dns2 = $dns2 -join '.'
我已經分離出的第一個3個字節與$threeOctets = $ip | Select-Object -First 3
,工作正常,什麼任何時候我操作就可以了,我似乎只是加上了1,那麼10,然後是11而不是添加的在1上,然後回到前3個八位字節並添加一個10,然後返回並添加一個11.