$RegKey =”HKLM:\Software\Microsoft\Windows\CurrentVersion”
Set-ItemProperty -Path $RegKey -Name “ProgramFilesDir” -Value “С:\Program Files”
Set-ItemProperty -Path $RegKey -Name “ProgramFilesDir (x86)” -Value ‘С:\Program Files (x86)’
$SMTPClient.EnableSsl = $true
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Если там к примеру $Title пустой а $Department нет, то так и записать пустой Title и проверить $Departme не превышает ли он 50 символов если нет также записать на свое место, если превышает обрезать до 50 символов и записать в файл
Import-csv ...... |
Foreach-Object {
# Тут обработки, которых я не очень понял
# Я просто обрезаю title до 50
if ($_.Title.Length -gt 50) {
# Вам явно не хватает присвоения результата remove(),
# я сделал по-другому, но суть та же
$_.Title = $_.Title.Substring(0, 50)
}
# вывод объекта дальше по конвейеру
$_
} |
# Тут специально предназначенная для вывода csv команда, а не out-file
Export-csv .....
The Procfile must live in your app’s root directory. It does not function if placed anywhere else.
IpInterfaceMetric=0
$c = [string[]](Get-Content .\0.txt)
$sk1 = [System.Collections.Generic.HashSet[string]]::new($c)
$c = [string[]](Get-Content .\1.txt)
$sk2 = [System.Collections.Generic.HashSet[string]]::new($c)
$sk1.IntersectWith($sk2)
$sk1
#классический цикл
foreach ($obj in $list) {
# сделать что-нибудь с переменной $obj
Set-something -name $obj.name -value $obj.value
}
#цикл с использованием pipeline
$list | foreach-object {
# сделать что-нибудь с переменной $_
Set-something -name $_.name -value $_.value
}
Set the value of the LocalAccountTokenFilterPolicy registry entry to 1.
For example, the following command uses the New-ItemProperty cmdlet and the Windows PowerShell Registry Provider to create the LocalAccountTokenFilterPolicy registry entry on the local computer and set its value to 1.
new-itemproperty -name LocalAccountTokenFilterPolicy -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System -propertyType DWord -value 1
#читаем список всех компов
$all=Import-csv xxx
#проходим по списку в поисках живых где неустановлено
foreach ($comp in $all) {
# проверяем всякие условия
if (-not $comp.installed -and
(test-connection $comp.name) -and
(-not (test-path ....)) { #можно еще условий добавить
#install
Invoke-command -computername $comp.name {
#тут команды установки
# никаких повторных invoke-command и powershell НЕ надо
}
.....
#ставим флаг что установлено
$comp.installed=$true
}
}
#экспортируем обратно в csv с установленными флагами
$all | export-csv xxx