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

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

bredych 05-02-2020 12:53 2908318

как батником забросить задачу в sheduler и выставить параметры запуска?
 
собственно, сабж.
Гугление кинуло несколкьо вопросов на оверклокерс и прочих, где юзерам предлагали вручную вводить параметры шедьюлера.
А можно ли это сделать скриптом, и как?
батник предпочтительно, но и ПС пойдет.
Или хоть направить, где это разбирается подробно

DJ Mogarych 05-02-2020 13:50 2908331

https://www.google.com/search?q=Set-ScheduledTask

greg zakharov 05-02-2020 16:43 2908376

Код:

schtasks /create /?

Vadikan 06-02-2020 00:23 2908436

С разбором параметров schtasks на примере cmd для очистки временных файлов
https://www.outsidethebox.ms/11968/#schtasks

YuS_2 06-02-2020 09:36 2908464

Цитата:

Цитата bredych
А можно ли это сделать скриптом, и как?
батник предпочтительно, но и ПС пойдет. »

Про cmd написали уже, а про powershell:
Создание задачи, выполняющей однократный запуск powershell с запуском скрипта "d:\get-curuser.ps1" от имени SYSTEM.
Выполнять от имени администратора:
Код:

$a = new-scheduledtaskaction -execute "powershell.exe" -argument {-exe bypass -f "d:\get-curuser.ps1"}
$t = new-scheduledtasktrigger -once -at (get-date)
$p = new-scheduledtaskprincipal "System"
$s = new-scheduledtasksettingsset
$task = new-scheduledtask -action $a -principal $p -trigger $t -settings $s
register-scheduledtask -taskname 'Run_PS_System' -taskpath '\' -inputobject $task

скрипт get-curuser.ps1:
Код:

[pscustomobject]@{
'env:username' = $env:username
'whoami' = whoami.exe
'GetCurrent' = [security.principal.windowsidentity]::getcurrent().name
} |fl|out-file "$psscriptroot\out.txt" -enc utf8

Далее, от имени администратора в консоли:
Код:

Start-ScheduledTask -taskname 'Run_PS_System'
В результате получим рядом со скриптом get-curuser.ps1, файл out.txt с содержимым, показывающим от имени кого был выполнен скрипт.

Ну, а вообще, справка по командлетам:
Код:

(gcm *schedul*).name|%{man $_ -s}


Время: 23:29.

Время: 23:29.
© OSzone.net 2001-