Войти

Показать полную графическую версию : [решено] Как изменить результат запроса PH


Johny_spb
22-12-2016, 11:37
Добрый День!!

Столкнулся со следующей проблемой: Есть скрипт для выгрузки из AD

PROCESS
{
$csvreportfile = "C:\user.csv"

Import-Module ActiveDirectory

Get-ADUser -SearchBase 'OU=comp' -Properties * -Filter * |
Select-Object @{Label = DistinguishedName;Expression = {$_.DistinguishedName}},
@{Label = "Display Name";Expression = {$_.DisplayName}},
@{Label = "sAMAccountName";Expression = {$_.sAMAccountName}},
@{Label = "employeeNumber";Expression = {$_.employeeNumber}} |

Export-Csv -Path $csvreportfile -NoTypeInformation -Encoding utf8
}
В результате выгрузки получается следующее:

"DistinguishedName","Display Name","sAMAccountName","employeeNumber"
"CN=user,OU=SPB,DC=com","Пользователь","User","123123123"
"CN=user1,OU=SPB,DC=com","Пользователь1","User","2323234"

Вопрос в следующем: Как заставить выводить результат в таком формате:

DistinguishedName,Display Name,sAMAccountName,employeeNumber
"CN=user,OU=SPB,DC=com",Пользователь,User,123123123
"CN=user1,OU=SPB,DC=com",Пользователь1,User,2323234

т.е. Убрать кавычки " везде после первой запятой!

Iska
22-12-2016, 11:43
Johny_spb, обрамляйте код тэгом «code».

Kazun
22-12-2016, 11:55
Get-ADUser -SearchBase 'OU=comp' -Properties DisplayName,employeeNumber -Filter * | Foreach {"DistinguishedName,Display Name,sAMAccountName,employeeNumber"} {
'"{0}",{1},{2},{3}' -f $_.DistinguishedName,$_.DisplayName,$_.sAMAccountName,$_.employeeNumber
} | Out-File $csvreportfile -Encoding UTF8

Johny_spb
22-12-2016, 12:34
$csvreportfile = "C:\Users\1\user.csv"

Get-ADUser -SearchBase 'OU=St-Petersburg,DC=region,DC=cbr,DC=ru' -Properties * -Filter *|
Foreach {"DistinguishedName,Display Name,sAMAccountName,employeeNumber"} {
'"{0}",{1},{2},{3}' -f $_.DistinguishedName,$_.DisplayName,$_.sAMAccountName,$_.employeeNumber |

}Out-File $csvreportfile -Encoding UTF8


Выдает ошибку:

ForEach-Object : Не удается привязать параметр "Process". Не удается преобразовать значение "Out-File" типа "System.Str
ing" в тип "System.Management.Automation.ScriptBlock".
C:\Users\1\ad4.ps1:5 знак:9
+ Foreach <<<< {"DistinguishedName,Display Name,sAMAccountName,employeeNumber"} {
+ CategoryInfo : InvalidArgument: (:) [ForEach-Object], ParameterBindingException
+ FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.ForEachObjectCommand

Kazun
22-12-2016, 12:36
Пригласите к компьютеру более обученный персонал, который умеет копировать.

Johny_spb
22-12-2016, 12:59
Ну да не внимательно посмотрел! СПС =)




© OSzone.net 2001-2012