Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Перезагрузка компьютеров домена по расписанию (http://forum.oszone.net/showthread.php?t=292782)

IVa_ 19-12-2014 16:09 2445799

Перезагрузка компьютеров домена по расписанию
 
Здравствуйте, не могли бы Вы мне помочь с wps?
Написать скрипт, выполняющий перезагрузку компьютеров домена по расписанию, при этом список компьютеров и время перезагрузки каждого скрипт получает из текстового файла, указанного в качестве аргумента.
Есть часть скрипта, которая отправляет компьютеры домена на перезагрузку, не знаю как время считывать.

Код:

$servers = Get-Content C:\Laba4\servers.txt
foreach ($server in $servers) {
write-Host "Старт перезагрузки "$server" -fore "Green"
Restart-Computer $server -whatif }


Iska 19-12-2014 16:34 2445808

IVa_, отделите время от имени машины, например, запятой или точкой с запятой:
Код:

MachineName01;01:02:03
MachineName02;10:10:00

После считывания разбивайте каждую строку оператором «-split» или используйте метод «.Split()» самого объекта string и доступ по индексу полученного массива. Например:
Код:

$sMachineList = "C:\Песочница\058\servers.txt"

if(Test-Path -Path $sMachineList -PathType Leaf) {
    Get-Content $sMachineList | ForEach-Object -Process {
        $sMachineName = $_.Split(";")[0]
        $dTime        = [datetime]($_.Split(";")[1])
       
        $sMachineName
        $dTime
    }
}


IVa_ 23-01-2015 00:43 2459971

Благодарен вам.


Время: 21:08.

Время: 21:08.
© OSzone.net 2001-