Что нового

Адаптирование команды powershell в autoit.

Detre

Новичок
Сообщения
70
Репутация
0
Всем доброго времени суток, нужна помощь на адаптирование команды powershell под Autoit.
Сама команда выглядит следующе: Get-ADComputer -Filter * -SearchBase "OU=Domain Computers , DC=Comodo, DC=net" | Sort Name | Select -expandproperty Name | %{ $_.TrimEnd(" ") } | Out-File -Encoding "default" C:\Get-ADComputers.txt.

Я пробовал
Код:
RunWait( @ComSpec ' /k powershell.exe  Get-ADComputer -Filter * -SearchBase "OU=Domain Computers , DC=Comodo, DC=net" | Sort Name | Select -expandproperty Name | %{ $_.TrimEnd(" ") } | Out-File -Encoding "default" C:\Get-ADComputers.txt')


И

Код:
RunWait(' C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe Get-ADComputer -Filter * -SearchBase "OU=Domain Computers , DC=Comodo, DC=net" | Sort Name | Select -expandproperty Name | %{ $_.TrimEnd(" ") } | Out-File -Encoding "default" C:\Get-ADComputers.txt')


И отдельно через файл скрипта.
Код:
RunWait('C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe D:\PROGRAMS\Dijo\FNKC-Pack\reg\Get-NAME.ps1')


Ошибку не сыпет и не создает файл. Если в самой консоли, то все изумительно. Помогите пожалуйста.
 

All2khoff

Продвинутый
Сообщения
351
Репутация
65
в powershell не особо умею, для начала я выполнил команду Set-ExecutionPolicy RemoteSigned во всплывшем окне согласился на всё.
после чего сработал вот такой вариант найденный на форуме
Код:
#include <Constants.au3>
Local $sUserName = "login"
Local $sPassword = "password"
Local $sDomain = "domain"


$PowerShell = RunAs($sUserName, $sDomain, $sPassword, 0,'PowerShell.exe '&" d:\comps.ps1", "", @SW_HIDE , $STDERR_CHILD + $STDOUT_CHILD + $STDIN_CHILD)

StdinWrite($PowerShell)

While 1
    $line = StdoutRead($PowerShell)
    If @error Then ExitLoop
    If $line <> "" Then
    MsgBox(0,"",$line)
    EndIf
Wend

While 1
    $line = StderrRead($PowerShell)
    If @error Then ExitLoop
    MsgBox(0,"",$line)
Wend

содержимое файла comps.ps1
Get-ADComputer -Filter * -SearchBase "DC=Comodo, DC=net" | Sort Name | Select -expandproperty Name | %{ $_.TrimEnd(" ") } | Out-File -Encoding "default" d:\Comps.txt
обратите внимание что я убрал из команды powershell "OU=Domain Computers" с этим параметром скрипт не срабатывал
файл comps.txt должен существовать
 
Последнее редактирование:
Верх