Можем ли мы отложить инициализацию переменных до тех пор, пока это не понадобится?Lazy loading в powershell?
Что я хотел бы сделать, это предопределить некоторые переменные в моем профиле, который будет содержать список AD компьютера:
скажем, я хочу:
$ OU1_workstation будет заполняться компьютеры, найденные в OU = рабочих станций, OU = OU1, dc = домен, DC = COM
$ OU2_workstation заправить компьютеров, найденных в
OU = рабочие станции, OU = OU2, dc = domain, dc = com и т. Д.
Для этого я использую следующий скрипт, но для вычисления требуется 30 секунд, поэтому в настоящее время я не могу его вставить мой профиль ...
Get-ADOrganizationalUnit -SearchScope onelevel -Filter "*" -Properties "name","distinguishedname" |%{
set-Variable -Name "$($_.name)_workstation" -value (Get-ADComputer -Searchbase "OU=workstations,$($_.Distinguishedname)" -Filter *)
}
Какие варианты доступны в PowerShell?
'$ Ленивый = [Ленивый [PSObject]]: : new ([Func [PSObject]] {dir}) ' – PetSerAl
lol Я думаю, что OP хочет оптимизировать свою команду, чтобы сделать это быстрее – sodawillow
@sodawillow это не про оптимизацию, я думаю, что это близко к тому, что я хочу: http://stackoverflow.com/a/14503339/381149 –