Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Подставление нужных символов в переменной.

Ответить
Настройки темы
PowerShell - [решено] Подставление нужных символов в переменной.

Новый участник


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

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


Изменения
Автор: Luka666
Дата: 21-10-2016
Доброго дня камрады!
Подскажите пожалуйста скриптовому нубу, как подредактировать строки в переменной?
Например при создании переменной:

Код: Выделить весь код
$userlist
командой:

Код: Выделить весь код
$userlist = Get-ADuser -filter * -SearhBase "ou=Users? ou=CU, ou= <...>, dc=ru" |Select-Object SamAccountName
создаютсо в ней такие данные:

Код: Выделить весь код
5826-34-54
5826-54-53
5826-43-94
5826-29-32
5826-86-55
2826-65-92...
Мне нужно, чтоб в переменной было так:

Код: Выделить весь код
1;5826-34-54;Пванов;бухи;1
1;5826-54-53;Петров;бухи;1
1;5826-43-94;Запупкин;бухи;1
1;5826-29-32;Деревянка;бухи;1
1;5826-86-55;Сыза;бухи;1
1;2826-65-92;Верко;бухи;1
т.е. подставить с лева и права конкретные смволы и данные с других переменных, или от полученных параметров? Желательно чтоб при создании переменной так сразу и было, т.е. что нужно подставить к строке создания переменной?
Ну иле после редактировать переменную, предварительно извлекая из каждой строки данные для создания дополнительных переменных. Думаю первым вариантом можна обойтись, вот только как?
Прошу прощения если как-то тяжело объяснил. С благодарностью жду вопросы и предложения.

Отправлено: 09:26, 21-10-2016

 

Забанен


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

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


Select'ом делаете нужные выборки, а далее преобразовываете в csv (в поздних версиях PS для этого есть ConvertTo-Csv)
Это сообщение посчитали полезным следующие участники:

Отправлено: 09:36, 21-10-2016 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


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

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


Цитата greg zakharov:
Select'ом делаете нужные выборки, а далее преобразовываете в csv (в поздних версиях PS для этого есть ConvertTo-Csv) »
А примеррчик можно? Мне же не одну строку, а все. И не нужен он мне в csv Нужен как текстовик. Но для начала мне нужно свормировать нужный текст в переменной. Хотел бы я ручками править, не псал бы это.

Отправлено: 09:42, 21-10-2016 | #3


Забанен


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

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


Luka666, еще раз - с чувством и расстановкой. Дабы просить пример, приведите полностью то, чем нужно оперировать; выходной формат в Вашем случае проще формировать как CSV, а сохранить его Вы можете и с расширением TXT, - суть улавливаете? В общем, приведите пример входящих данных (без select'ов и прочего).

Отправлено: 10:01, 21-10-2016 | #4


Аватара для Elven

Ветеран


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

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


Код: Выделить весь код
Import-Module ActiveDirectory
$userlist = (Get-ADUser -filter * -Properties * | foreach {
$a = "1;" + $_.SamAccountName + ";" + $_.Name + ";" + $_.Department + ";1"
$a
})
$userlist
так чтоле?

Последний раз редактировалось Elven, 21-10-2016 в 10:49.

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:21, 21-10-2016 | #5


Новый участник


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

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


Попробую.
В переменную записывается перечесление SamAccounName с конкретного ou.
Мне нужно после чтоб после SaмAccountName подставлялось сразу через ";" Name в каждой строке.
Также мне просто нужно подставить к ним с двух сторон тупо символы 1;

|Select-Object SamAccountName, name

Даёт немножко не тот результат.
По сути мне нада, узнать как вставить несколько простых, одинаковых символов, при необходимости даже из созданных специальна текстовых переменных, в определённые места списка и убрать лишние пробелы.

Последний раз редактировалось Luka666, 21-10-2016 в 11:06.


Отправлено: 10:34, 21-10-2016 | #6


Новый участник


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

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


Цитата Elven:
Код: Выделить весь код
Import-Module ActiveDirectory
$userlist = (Get-ADUser -filter * -Properties * | foreach {
$a = "1;" + $_.SamAccountName + ";" + $_.Name + ";" + $_.Department + ";1"
$a
})
$userlist
так чтоле? »
Ога! практчески так как я и хотел! Благодарю от души. Теперь буду начинать вникать как и почему это так делаетсо. Чтоб лучше усвоить шта значат данные коды. Ещё раз спасибо.

Отправлено: 11:34, 21-10-2016 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Подставление нужных символов в переменной.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Реализация функций длины переменной, выделение подстроки с параметрами в переменной. NiOl Скриптовые языки администрирования Windows 7 31-01-2019 19:58
CMD/BAT - Обработка более 1028 символов в переменной worship Скриптовые языки администрирования Windows 4 27-02-2015 13:34
CMD/BAT - [решено] В переменной содержится имя переменной opravdin Скриптовые языки администрирования Windows 3 28-01-2013 11:11
Функция PHP для удаления не нужных символов darksmoke Вебмастеру 3 01-04-2008 01:18
Авто определение нужных драйверов. Mss Автоматическая установка Windows 2000/XP/2003 10 29-02-2008 13:36




 
Переход