Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для Efsey

Пользователь


Сообщения: 55
Благодарности: 0

Профиль | Отправить PM | Цитировать


заменил, процесс пошел, но описание не меняет
вывод:

Код: Выделить весь код
123-1      #123-1#
156-2      #156-2#
114-3      #114-3#
125-4      #125-4#
135-5      #135-5#
148-6      #148-6#
1400      #1400#
111-111      #111-111#
1212-1212      #1212-1212#
12883-1      #12883-1#
Нашел в чем проблема, вот работающий вариант:
Код: Выделить весь код
$file='C:\1\1.csv'                                                                                #файл со списком
$temp='C:\1\temp.csv'
$put='OU=testgroups,OU=tets,DC=skiffin,DC=home'
Get-content $file|out-file $temp -Encoding unicode
$header='old','new'
$csv=import-csv $temp -header $header -delimiter ";"
Get-ADGroup -filter {*} -SearchBase $put -Properties description |foreach{

$rt=[regex]::Matches($_.description,'(?=\#).(\d\d\d)(.*)(?=\#)')       #выбирает начиная с 3ей # получается #123-1
$rt=[string]$rt
$oldSTR=$rt.substring(1)                               #убираю # из строки 
$top='#'+$oldstr+'#'
$csv|foreach{                                               #ищу значение в списке
if($oldSTR -eq $_.old){
$top='#'+$_.new+'#'
}}
$newdsc=$_.description.replace('#'+$oldstr+'#','#'+$top+'#')          #заменяю значения
$vse=$oldstr+'      '+$top;
$vse
Set-Adgroup $_ -replace @{description=$newdsc}                    #вношу изменения в AD
}

Отправлено: 17:28, 12-01-2013 | #3