|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Переменные из данных в txt файле |
|
PowerShell - [решено] Переменные из данных в txt файле
|
Новый участник Сообщения: 35 |
Всем доброго времени суток. Для меня, по-прежнему, PoSH - дремучий лес. И вновь появилась (поставили
![]() Есть txt файл с некими параметрами Id : 39d525ee-de75-446c-84bd-0d0ff08d3b8d TypeOfRule : IP VMId : e0f63469-1c5e-4c8e-a0ae-5b92e7cfe1da Name : ICMP Allow in Description : Direction : Inbound Action : Allow LocalPorts : {0-65535} RemotePorts : {0-65535} RemoteVMs : {} TargetAddressType : Any VlanId : 4095 Protocol : ICMP ProtocolNum : 1 ProtocolString : ICMP RemotePortsString : 0-65535 LocalPortsString : 0-65535 RemoteIPs : Any RemoteMACString : Any Заранее признателен за любую помощь. А если еще и наводка будет на то, что почитать. Конкретно по данной тематике - с меня напитки и плюшки по почте России :D |
|
Отправлено: 16:43, 01-06-2015 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Kazun, в общем скрипт отрабатывает без ошибок НО
$script:vmgroup=Get-VMgroups | where {$_.name -like "ad*"} | select -ExpandProperty ID Get-Rules -VMId $groupID | Export-Clixml -path c:\rules10.xml $script:vmgroup2=Get-VMGroups | where {$_.name -like "web*"} | select -ExpandProperty ID Add-IPRule | Import-Clixml -path C:\rules10.xml Полагаю, что еще и парсинг XML придется почитать... |
------- Последний раз редактировалось breakfruit, 02-06-2015 в 12:12. Отправлено: 10:23, 02-06-2015 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать |
Отправлено: 12:18, 02-06-2015 | #12 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Kazun, наводка отличная. Ман прочитал, но... Команда данная ровным четом не выполняет нужной функции, так как ADD-IPrule продалжает запрашивать необходимые параметры, но такой код
$script:vmgroup=Get-VMgroups | where {$_.name -like "ad.*"} | select -ExpandProperty ID Get-Rules -VMId $vmgroup | Export-Clixml -path c:\rules10.xml $script:vmgroup2=Get-VMGroups | where {$_.name -like "web*"} | select -ExpandProperty ID $script:inputdata=Import-Clixml -path C:\rules10.xml foreach ($VMid in $InputData) { Add-IPRule -VMId $vmid.vmid -Name $vmid.name -Action $vmid.action -Description $vmid.description -Protocol $vmid.protocol } |
------- Отправлено: 13:17, 02-06-2015 | #13 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Нашел свою ошибку. Дальше пошли танцы со сторонним командлетом. Помечаю тему, как решенную. Всем спасибо за участие!
|
------- Отправлено: 15:43, 02-06-2015 | #14 |
Забанен Сообщения: 793
|
Цитата breakfruit:
|
|
Отправлено: 17:57, 02-06-2015 | #15 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать greg zakharov, сейчас очень интересно, но я мало чего понял...
Т.е. я понимаю, о каких спагетти речь (они фактически и получились) - но все остальное.... |
------- Последний раз редактировалось breakfruit, 03-06-2015 в 17:20. Отправлено: 17:05, 03-06-2015 | #16 |
Забанен Сообщения: 793
|
breakfruit, прошу прощения, если сформулировал мысль не достаточно четко. Попробую объяснить популярно на пальцах. Допустим есть командлет, которому нужно скормить более одного параметра за раз. Например:
Иными словами, чем больше параметров, тем длиннее спагетти, а следовательно сложнее в отладке код. Чтобы сделать код более удобочитаемым параметры командлету можно передать в виде хэш-литерала, т.е. код выше можно переписать как:
Если по каким-то причинам какой-то из параметров оказался не нужел, достаточно его либо удалить из хэша, либо закомментировать.
|
Отправлено: 18:18, 03-06-2015 | #17 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать greg zakharov, во. Я попоутно читаю, конечно же, литературу и блоги на тему PoSH. Т.е. мы создаем переменную и задаем значением оной - массив параметров? Или я путаюсь в определениях? Суть кода я понял, но (так как я ОЧЕНЬ далек от кодинга в принципе, и по образованию воообще никому не нужный гуманитарий :D ) в определениях, видимо, путаюсь.
|
------- Отправлено: 08:35, 04-06-2015 | #18 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать breakfruit, верно. Только не «массив», а «хэш-таблица» (набор пар «имя-значение»).
|
Отправлено: 08:40, 04-06-2015 | #19 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Iska, и любой командлет (даже стороннего разработчика) будет его нормально воспринимать? Т.е. это приемущество непосредственно PoSH, которое не зависит от командлетов?
|
------- Отправлено: 08:48, 04-06-2015 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBS/WSH/JS - Выбор данных из txt файла | leks71 | Скриптовые языки администрирования Windows | 2 | 13-04-2015 20:00 | |
Любой язык - Выборка данных из txt | KarpovStas | Скриптовые языки администрирования Windows | 22 | 27-11-2013 17:16 | |
CMD/BAT - выполнение команд из списка в txt файле | systemroot | Скриптовые языки администрирования Windows | 2 | 12-02-2011 17:49 | |
CMD/BAT - [решено] Ввод данных в переменную из txt-файла | river123 | Скриптовые языки администрирования Windows | 1 | 10-01-2011 18:43 | |
CMD/BAT - [решено] Выбор данных из txt по маске | hxygen | Скриптовые языки администрирования Windows | 4 | 24-10-2010 15:52 |
|