Архив за ноября 2014
[PowerShell] Данные из XML файла
Есть XML файл с данными сотрудников компании следующей структуры:
Необходимо из некого выгружать данные с помощью PowerShell. Скрипт достаточно простой получился:
# Пробелы в квадратных скобках нужно убрать
[ xml ]$xmlfile = Get-Content "D:\xml\test.xml"
foreach($xmluser in $xmlfile.domainusers.user) {
Write-Host $xmluser.ФИО
Write-Host $xmluser.Телефон
}
В примере скрипт выводит данные из двух тэгов – ФИО и телефон.
VPN клиент на TP-Link TL-MR3020 с прошивкой OpenWRT
Я уже писал про OpenWRT на TP-Link TL-MR3020:
1. Установка OpenWrt на роутер TP-Link TL-MR3020,
2. Как подключить флешку к TP-Link TL-MR3020,
3. 3G модем на роутере TP-Link TL-MR3020,
теперь опишу процесс настройки VPN клиента на роутере TP-Link TL-MR3020 для подключения к PPTP серверу.
Импорт данных из XML файла в список SharePoint с помощью PowerShell
Появилась задача загрузить данные из файла XML в список SharePoint 2010. XML имеет следующую структуру:
В SharePoint 2010 заранее создал список — Список пользователей, с соответствующими полями. Вот скрипт на PowerShell, который возьмет данные из файла XML и загурузит в список SharePoint:
if(!(Get-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction:SilentlyContinue))
{
Add-PSSnapin Microsoft.SharePoint.Powershell
#Set these two variables accordingly
$WebURL  = “http://portal.contoso.com/”
$ListName = "Список пользователей"
$XMLFilePath = "C:\scripts\xml\test.xml"
#Get the Web
$web = Get-SPWeb $WebURL
#Get the List
$ProjectList = $web.Lists[$ListName]
#import xml file
[*xml]$ProjectXmlFile = Get-Content $XMLFilePath
foreach ($XMLProject in $ProjectXmlFile.domainusers.user)
 {
$NewProject = $ProjectList.Items.Add()
$NewProject["ФИО"] = $XMLProject.ФИО
$NewProject["Отдел"] = $XMLProject.Отдел
$NewProject["Должность"] = $XMLProject.Должность
$NewProject["Комната"] = $XMLProject.Комната
$NewProject["Рабочий телефон"] = $XMLProject.Телефон
$NewProject["Адрес электронной почты"] = $XMLProject.Почта
$NewProject.Update()
Write-Host "Project $($XMLProject.ФИО) has been Added to External Projects list!"
 }
* в коде есть место — [*xml], так звездочку нужно удалить.
Это скрипт подойдет только для разовой загрузки данных, т.к. скрипт не заменяет данные в списке SharePoint, а еще раз их туда запишет, если его повторно запустить. Т.е. в списке будет две Ивановой, и две Соколовой.
Как узнать версию SharePoint
Все время забываю, где можно посмотреть версию SharePoint. Так что это напоминалка для себя.
1. Версию SharePoint можно посмотреть в Центре администрирования –> Параметры системы –> Управление серверами в этой ферме.

2. С помощью PowerShell:
Get-SPFarm | Select BuildVersion

Командлет доступен только через Командную консоль SharePoint 2010, если через обычную консоль PowerShell, то необходимо добавить оснастку Microsoft.SharePoint.Powershell.
if(!(Get-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction:SilentlyContinue))
{
Add-PSSnapin Microsoft.SharePoint.Powershell
}
get-spfarm | select BuildVersion
3. Еще один вариант:
([Microsoft.SharePoint.Administration.SPFarm]::Local).buildversion

Как сохранить драйвера перед переустановкой Windows
 Попал ко мне в руки старых лаптоп (ноутбук) Sony VAIO PCG-5J3P с красной крышкой. Внутри Intel Core 2 Duo 2.0GHz, 1 GB RAM, HDD 200 GB. Он года выпуска вроде 2007. Лицензионная наклейка на нем Windows Vista, но по файкту стоит WIndows XP. Работает вполне бодро. Его планируется задействовать для одной простой задачи, с которой он справится на отлично. Но до этого его нужно подготовить, а точнее почистить от пыли и переустановить Windows. Перед форматированием жесткого диска задался вопросом, а как же у него с драйверами? К моему удивлению, на сайте SONY не было упоминания об этой модели ноутбука вообще! Даже гугл выдавал несколько ссылкок на форумы, где люди ищут для него драйвера. Первый раз с таким сталкиваюсь, вродне, лаптоп не похож на подделку китайскую, сделан хорошо. Может компании Сони стало стыдно за эту можель, они решили о ней забыть и удалили со своего сайта все упоминания о ней? Похоже на бред, конечно.
Попал ко мне в руки старых лаптоп (ноутбук) Sony VAIO PCG-5J3P с красной крышкой. Внутри Intel Core 2 Duo 2.0GHz, 1 GB RAM, HDD 200 GB. Он года выпуска вроде 2007. Лицензионная наклейка на нем Windows Vista, но по файкту стоит WIndows XP. Работает вполне бодро. Его планируется задействовать для одной простой задачи, с которой он справится на отлично. Но до этого его нужно подготовить, а точнее почистить от пыли и переустановить Windows. Перед форматированием жесткого диска задался вопросом, а как же у него с драйверами? К моему удивлению, на сайте SONY не было упоминания об этой модели ноутбука вообще! Даже гугл выдавал несколько ссылкок на форумы, где люди ищут для него драйвера. Первый раз с таким сталкиваюсь, вродне, лаптоп не похож на подделку китайскую, сделан хорошо. Может компании Сони стало стыдно за эту можель, они решили о ней забыть и удалили со своего сайта все упоминания о ней? Похоже на бред, конечно.
[PowerShell] Как получить GUID и objectGUID из ActiveDirectory
При выгрузке свойства objectGUID учетных записей пользователей из ActiveDirectory при помощи Quest Powershell выяснилась одна особенность. objectGUID в результате выгрузки отличается от оригинала в AD, т.е. его потом нельзя использовать для поиска учеток в AD без преобразования.
Тут все дело в представлении. Для примера:
Get-QADUser USER | fl objectguid,guid
В результате получим два разных варианта:
objectGUID : 3F8C2B60E1E26C44B6D20FF8F6C3028F
Guid       : 602b8c3f-e2e1-446c-b6d2-0ff8f6c3028f
Guid совпадает с оригиналом из AD, а objectGUID его преобразованная версия в формат HexString. Чтобы не забивать себе голову обратным преобразованием, просто используем свойство Guid.
Для наглядного примера можно использовать эти команды:
$guid = (Get-QADUser USER).guid Get-QADUser $guid
В результате должны отобразиться данные USER.
Полезные ссылки по этой теме:
![powershell_read_xml_1 powershell read xml 1 thumb [PowerShell] Данные из XML файла](http://did5.ru/wp-content/uploads/2014/11/powershell_read_xml_1_thumb.jpg)
![powershell_read_xml_2 powershell read xml 2 thumb [PowerShell] Данные из XML файла](http://did5.ru/wp-content/uploads/2014/11/powershell_read_xml_2_thumb.jpg)

