Передача строковой переменной в New-item -path
Я писал этот код, чтобы захватить только что созданное имя пользователя samaccount и создать для него домашнюю папку! я сталкиваюсь с этой проблемой -
$ADServer= 'xyz'
$c = Get-EventLog Security -computername $ADServer -After (Get-Date).AddHours(-24) | Where-Object { $_.EventID -eq 4720 -and $_.Message -match "sam account name:\s+(.*)"} | ForEach-Object { $matches[1] } | Select-Object -First 1
New-Item -ItemType Directory -Path "\\abc\$c"
это показывает ошибку - недопустимые символы в строке, как я могу создать папку из того же, что я захватил в $c
?
1 ответ
Попробуй это:
New-Item -ItemType Directory -Path "\\abc\c$\$($c.Trim())"
или же:
$c = $c.trim()
New-Item -ItemType Directory -Path "\\abc\$c"
Причина: у вас есть лишний пробел в конце, поэтому он не работает,
Использовать $c.trim()
или же $c -replace "\s"
убрать пробел