Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Как изменить результат запроса PH (http://forum.oszone.net/showthread.php?t=321949)

Johny_spb 22-12-2016 11:37 2697617

Как изменить результат запроса PH
 
Добрый День!!

Столкнулся со следующей проблемой: Есть скрипт для выгрузки из 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 2697619

Johny_spb, обрамляйте код тэгом «code».

Kazun 22-12-2016 11:55 2697622

Код:

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 2697632

$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 2697634

Пригласите к компьютеру более обученный персонал, который умеет копировать.

Johny_spb 22-12-2016 12:59 2697639

Ну да не внимательно посмотрел! СПС =)


Время: 14:53.

Время: 14:53.
© OSzone.net 2001-