не подразумевает использования их IMAP сервера
вот тут вы раскладываете на массив байтов исходный IP-адрес, делаете из него реверс и снова собираете в адрес - зачем? какова цель этого? если я правильно понимаю - то строки 2,3,5,6 из этого куска можно удалить# получаем диапазон ip-адресов $ipStart = $ipaddress1.GetAddressBytes() [Array]::Reverse($ipStart) $ipStart = ([System.Net.IPAddress]($ipStart -join '.')).Address $ipEnd = $ipaddress2.GetAddressBytes() [Array]::Reverse($ipEnd) $ipEnd = ([System.Net.IPAddress]($ipEnd -join '.')).Address
с учетом вышеизложенного условие цикла должно выглядеть так:#добавляем диапазон ip-адресов в базу данных for ($x = $ipStart; $x -le $ipEnd; $x++)
for ($x = $ipStart[3]; $x -le $ipEnd[3]; $x++)
$ip = $ipStart[0],$ipStart[1],$ipStart[2],$x -join '.'
[Array]::Reverse($ip)
INSERT INTO public.ip_addresses (ip_range) VALUES ('1.39.62.10'::inet);
Оператор "++" используется только с числами. Операнд: "System.String".
строка:4 знак:36
+ for ($x = $ipStart; $x -le $ipEnd; $x++)
+ ~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : OperatorRequiresNumber
По факту файловые сессии не закрываютсятак вы SMB-сессии и не закрываете. Судя по приведенному коду, вы закрываете только открытые файлы в SMB-сессии. Для SMB-сессий есть Get-SmbSession и Close-SmbSession.
Вышенаписанный скрипт как подстраховкаподстраховка от чего?
Сервер очень долго был в ремонте