Архив автора: admin

Django. Настройка поддержки Django проектов в Pycharm Professional (часть 3)

Django (часть 1). Python, установка PIP и настройка Virtual Environment
Установка Django (часть 2), создание первого проекта

Pycharm Professional

Нажимаем create new project => выбираем Django => далее в Location выбираем папку с нашим проектом (sites -> dom_u_morja)

Нажимаем Create -> yes

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

File -> Settings -> Languages & Frameworks -> Django -> Enable Django Support

 

Пункт 3. Выбираем папку проекта

 

Пункт 4. Выбираем файл с настройками settings.py

 

Жмем OK -> OK

Панель запуска сервера стала активной. Нажимаем зеленый треугольник и Web сервер запустился

Нажимаем на ссылку в терминале, должен открыться браузер по этому же адресу

Автор: Vladimir Semenovich

Установка Django. Создание первого проекта (часть 2)

Официальный сайт
https://www.djangoproject.com/download/

Установка Django нужной нам версии. Если версия 1.9.5 вас не устраивает, то просто замените на ту, которая вам нужна.

$ pip install Django==1.9.5

Расшифровка (LTS) — long-term support releases

После того как мы активировали virtualenv, внутри его мы создаем наш проект, ссылка на первую статью: Django (часть 1). Python, установка PIP и настройка Virtual Environment

$ pip install django
или
$ easy_install django

В папке pyvenv/bin у нас появится файл django-admin.py, он позволяет как создавать так и управлять django-проектами.

$ python django-admin.py — команда для просмотра параметров, которые может выполнить этот скрипт.

Type 'django-admin.py help ' for help on a specific subcommand.

Available subcommands:

[django]
   check
   compilemessages
   createcachetable
   dbshell
   diffsettings
   dumpdata
   flush
   inspectdb
   loaddata
   makemessages
   makemigrations
   migrate
   runserver
   sendtestemail
   shell
   showmigrations
   sqlflush
   sqlmigrate
   sqlsequencereset
   squashmigrations
   startapp
   startproject
   test
   testserver
Note that only Django core commands are listed as settings are not properly configured (error: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.).

В настоящий момент нас интересует только параметр startproject

Создаем папку sites в каталоге pyvenv, тут будут храниться наши сайты.
$ mkdir sites
$ cd sites

Создаем наш первый проект на Django
$ python django-admin.py startproject dom_u_morja

Переходим в него
$ cd dom_u_morja

В этой папке находится очень интересный файл manage.py, он позволяет управлять уже созданным приложением.

$ python manage.py — команда для просмотра параметров, которые может выполнить этот скрипт

Type 'manage.py help ' for help on a specific subcommand.

Available subcommands:

[auth]
   changepassword
   createsuperuser

[django]
   check
   compilemessages
   createcachetable
   dbshell
   diffsettings
   dumpdata
   flush
   inspectdb
   loaddata
   makemessages
   makemigrations
   migrate
   sendtestemail
   shell
   showmigrations
   sqlflush
   sqlmigrate
   sqlsequencereset
   squashmigrations
   startapp
   startproject< /span>
   test
   testserver

[sessions]
   clearsessions

[staticfiles]
   collectstatic
   findstatic
   runserver

В настоящий момент нас интересует только параметр runserver

Этой командой мы запускаем встроенный в Django Web-сервер
$ python manage.py runserver

Выполнив эту команду мы получим информацию об используемой версии Django, текущую дату или информацию об ошибках, а также путь к нашему серверу 127.0.0.1:8000

April 15, 2016 — 19:17:14
Django version 1.9.5, using settings 'dom_u_morja.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Not Found: /
[15/Apr/2016 19:18:02] «GET / HTTP/1.1» 200 1767
Not Found: /favicon.ico
[15/Apr/2016 19:18:02] «GET /favicon.ico HTTP/1.1» 404 1941

Вернемся опять в командную строку и увидим сообщение о не примененных миграциях.
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
ctrl + c — чтобы остановить север.

Теперь введем.
$ python manage.py migrate

Сейчас в Django 1.9 используем migrate вместо syncdb.
Перед тем как делать syncdb, правильно запускать проверку:
python manage.py validate – проверяет на ошибки структуру ваших моделей,
validate — эта команда не работает в django 1.9 (нужно использовать check)

$ python manage.py check

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

Operations to perform:
Apply all migrations: admin, contenttypes, auth, sessions
Running migrations:
Rendering model states… DONE
Applying contenttypes.0001_initial… OK
Applying auth.0001_initial… OK
Applying admin.0001_initial… OK
Applying admin.0002_logentry_remove_auto_add… OK
Applying contenttypes.0002_remove_content_type_name… OK
Applying auth.0002_alter_permission_name_max_length… OK
Applying auth.0003_alter_user_email_max_length… OK
Applying auth.0004_alter_user_username_opts… OK
Applying auth.0005_alter_user_last_login_null… OK
Applying auth.0006_require_contenttypes_0002… OK
Applying auth.0007_alter_validators_add_error_messages… OK
Applying sessions.0001_initial… OK

Автор: Vladimir Semenovich

Kali Linux 2016-2. Latest version.

Как и было обещано на конференции по сетевой безопасности Black Hat и Def Con,  Offensive Security — создатели швейцарских армейский ножей для исследователей, испытателей на проникновение, и хакеров — наконец-то выпустили долгожданную Kali Linux 2016.2. Читать

Рецепты домашних ликёров

Рецепты домашних ликёров
Рецепты домашних ликёров:

ВИШНЁВЫЙ ЛИКЁРСостав: 3 кг вишни, 2 кг сахара, 1 л. водки Для приготовления вишневого ликера применяются полностью вызревшие ягоды вишни, причем вместе с косточкой. Примечательно то, что при настаивании ядро косточки дарит напитку горьковатый привкус наряду с ароматом миндальных орехов. Зрелую ягоду засыпаем в 3 л банку, сверху 1 кг. сахара и 0.5 л водки. Настоять 6-7 дней, ежедневно встряхивая содержимое банки. Затем фильтруем и добавляем оставшуюся водку и сахар, слегка подогреваем, чтобы сахар растворился. Фильтруем вишневый ликер до прозрачности, можно использовать слой ваты, даем постоять еще сутки, после чего вишневый ликер, приготовленный в домашних условиях, готов! Осталось разлить его по бутылкам и плотно закупорить! МАЛИНОВЫЙ ЛИКЕР: 1 кг малины, 1 кг сахара, 1 л. спирта, 1 л. воды. Малину разминают, заливают спиртом и настаивают 15 дней, периодически встряхивая. Из сахара и воды варят сироп, снимают накипь, охлаждают до 30-40С и вливают в настой, перемешивают и настаивают ещё 2 недели. Профильтровать, разлить и закупорить. ЛИКЕР «ОГНЕННЫЙ» Сахар — 1, 5 кг, красная смородина — 2 кг, водка — 2 л. Ягоды всыпать в бутылку или банку с сахаром. Через 0, 5–2 месяца процедить выделившийся сок, добавить водку и разлить в бутылки. ЛИКЕР ИЗ КРАСНОЙ СМОРОДИНЫ: Сахарный песок — 800 г, сок из красной смородины — 1 л, водка — 750 мл, вода -2 стакана. Ягоды с 4–5 листьями смородины и залить водкой. Закупорить бутылку и выдержать на солнце 5–6 недель. Выделившийся сок процедить и в него добавить приготовленный густой сахарный сироп (из расчета 800 г сахара на 2 ст. воды). Ликер профильтровать, разлить по бутылкам и хорошо закупорить. ЛИКЕР ИЗ ЧЕРНОЙ СМОРОДИНЫ: Сахарный песок — 800 г, мед цветочный — 200 г, смородиновая жидкость и водка — 1 л, листья смородины — 2–3 шт., вода — 0, 5 л. Ягоды в банку и залить водкой. Добавить несколько листьев смородины и выдержать 5–6 недель. Профильтровать, добавить цветочный мед и сироп, приготовленный из сахара и воды. Полученный ликер процедить. ИЗУМРУДНЫЙ ЛИКЕР: 2 кг очищенного от плодоножек крыжовника зеленых сортов, 1 л спирта, 30 молодых вишневых листочков, 1 кг сахара, 0, 5л воды. Крыжовник и вишневые листочки засыпать в бутыль, залить спиртом, настаивать неделю. Приготовить сахарный сироп и вливать его в бутыль. Настаивать ещё неделю, процедить, разлить в бутылки, закупорить. ЛИКЕР ИЗ ЧЕРНОПЛОДНОЙ РЯБИНЫ: 1 кг черной смородины, 1 кг сахара, 1 л водки 40%, 0,75 л чистой воды, 6-8 листьев черной смородины. Подготовленные ягоды тщательно растереть толкушкой, засыпать в 3 х литр. бутыль вместе с листьями и залить все водкой. Плотно закрыть и поставить в теплое место (30-40С) на 6 недель. Далее готовим сахарный сироп, доводим до закипания и проварить в течение 8-10 мин. на небольшом огне. Как только сироп начнет пенится — снять его с огня и дать остыть. Содержимое бутыля процедить через марлю, сложенную в три слоя, добавить к ликеру сироп, разлить по стеклянным бутылкам и плотно закупорить. Ликер из черной смородины будет вкуснее, если дать ему настояться около недели в прохладном месте. ОБЛЕПИХОВЫЙ ЛИКЕР: Сахарный сироп — 2, 6 л, облепиховый спиртованный сок — 750 мл (облепиха свежая — 1 кг), черничный морс — 10 мл (черника сушеная — 4 г), ванилин — 0, 2 г, лимонная кислота — 3 г, вода — 600–750 мл. Облепиховый спиртованный сок и черничный морс смешать с 66%-ным сахарным сиропом, добавить колер, ванилин и лимонную кислоту для добавления кислотности напитка до 0, 4 г/100 мл. Кипячёную воду добавить в водку с таким расчётом, чтобы напиток получился крепостью не более 25%. Полученный
профильтрованный напиток — жёлтого цвета с красноватым оттенком, кислотно-сладкий, с ароматом облепихи. КЛЮКВЕННЫЙ ЛИКЕР: 4 ст. клюквы, 500 г сахара, 0, 75л воды. Клюкву хорошо размять или через мясорубку, залить водкой и настаивать 3–4 дня. Процедить, добавить сахар и поставить на огонь, но до кипения не доводить. Снять с огня, опустить в ликер на пять минут завернутые в марлю гвоздику и кардамон. Затем разлить по бутылкам через воронку, закрытую марле. Каждое процеживание увеличивает прозрачность ликера. Хранить в прохладном месте. РЯБИНОВЫЙ ЛИКЕР: Сахарный сироп — 1 л, рябина — 1кг, водка — 2 л, пряности (гвоздика, корица и лимонная корка) — по желанию. Ягоды в бутыль, залить холодным сахарным сиропом, водкой и плотно закрыть. В теплом месте настаивать три недели. Приготовленный ликер профильтровать и разлить по бутылкам. КАЛИНОВЫЙ ЛИКЕР: Ягоды калины без веточек — 1, 5 кг, сахар — 1, 2 кг, водка — 1 л, вода 400 мл. Ягоды калины обдают кипятком, дают стечь, засыпают в бутыль, добавляют 2 ст. сахара, выдерживают на солнце (или в теплом месте) 1–2 дня, добавляют водку и настаивают 7–10 дней. Из оставшегося сахара и воды готовят сироп, охлаждают до 30–40 С, вливают в бутыль и настаивают ещё месяц. Затем фильтруют, разливают в бутылки, закупоривают. МЯТНЫЙ ЛИКЕР: 4 ветки мяты заливают 1 л. водки, плотно закупорить и настоять 2 недели. Затем водку процедить, добавляют 200 г сахара, нагреть на огне, чтобы сахар растворился, остудить и разлить по бутылкам.
Рецепты домашних ликёров
Рецепты домашних ликёров

Автор: John Silver

Продукты для красоты

Что есть для шелковистой кожи, великолепных густых волос и молодого лица без мешков под глазами?

Следует ли спешить в аптеку за «чудодейственными» биологически активными добавками? Нет! За красотой идите не в аптеку, а в сад. Читать

Полезные скрипты для Sharepoint на Powershell

Для тех кто хочет почувствовать настоящим админом, в  SharePoint есть интеграция с Powershell.  
Всегда полезно иметь под рукой набор скриптов, которые решил собрать в одном месте..
Для изучения команд SharePoint  на первом этапе будем пользоваться  средой  PowerShell ISE,  нереально полезная оболочка для начинающих!!
Эта среда позволяет в наглядном виде получать описания команд ,а также при необходимости сохранять целые сценарии.
Запускаем  PowerShell ISE и добавляем  командлет SharePoint в консоли.
Add-PSSnapin Microsoft.Sharepoint.Powershell
Можно также встретить в скриптах более продвинутый вариант
If ((Get-PSSnapIn -Name Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue) -eq $null
{ Add-PSSnapIn -Name Microsoft.SharePoint.PowerShell
Веб приложения и список сайтов
$webApp = Get-SPWebapplication 'http://london'

foreach($spSite in $webApp.Sites)
{
if ($spSite.HostHeaderIsSiteName)
{ Write-Host $spSite.Url 'is host-named' }
else
{ Write-Host $spSite.Url 'is path based' }
}

Результат
Коллекции сайтов могут быть 2х типов, сайт на основе пути (http://london/sites/demosite  по пути веб приложения создаются под сайты), и сайт на основе имени узла ( http://portal.contoso.com любое красивое имя для сайта )
Подробно на сайте Майкрософт
Сайты на основе имени узла создаются  только через Powershell, пример создания

New-SPSite 'http://portal.contoso.com' -HostHeaderWebApplication (Get-SPWebApplication 'http://london') -Name 'Portal' -Description 'Portal site' -OwnerAlias 'contosoadministrator' -language 1033 -Template 'STS#0'

New-SPSite 'http://bi.contoso.com' -HostHeaderWebApplication (Get-SPWebApplication 'http://london') -Name 'BI' -Description 'BI site' -OwnerAlias 'contosoadministrator' -language 1033 -Template 'BICenterSite#0'
Доступные шаблоны можно посмотреть командой

Get-SPWebTemplate

Небольшое видео  по настройке сайтов на основе имени

Список установленных компонентов
Get-SPFeature -Limit ALL | Where-Object {$_.Scope -eq «SITE»}
#Поиск по названию
Get-SPFeature -Limit ALL | Where-Object {$_.DisplayName -like «*Access*»}
Список доступных шаблонов сайтов
Get-SPWebTemplate | where {$_.Title -match «business»}
Список запущенных служб
Get-Service | Where-Object {$_.DisplayName -like «Sharep*»}
Теущая версия фермы с
(get-spfarm).buildversion
Конвертация сайтов на основе пути в сайты на основе имени
Backup-SPSite http://server_name/sites/site_name -Path C:Backupsite_name.bak
Remove-SPSite –Identity http://server_name/sites/site_name –Confirm:$False 
Restore-SPSite http://www.example.com -Path C:Backupsite_name.bak -HostHeaderWebApplication http://server_name
Создать новый сайт
New-SPWeb -Url http://portal.contoso.com/TestSite -AddToQuickLaunch -AddToTopNav -Name TestSite -Template STS#0 -UseParentTopNav
Создать список на сайте
$w= Get-SPWeb  -Identity http://portal.contoso.com/TestSite  
$w.Lists.Add(«Project Tasks»,«» , «Tasks»)
Экспорт сайтов, библиотек, списков
Export-SPWeb -identity «http://dev.contoso.com» –path «C:Export_dev_contoso.cmp» -includeUserSecurity –Force
Export-SPWeb -identity «http://dev.contoso.com» -ItemUrl «/Contracts» -path «C:Export_Contracts.cmp» -includeUserSecurity –Force
Импорт сайтов, библиотек, списков из cmp файла  (Content migration package)
Import-SPWeb -identity «http://dev.contoso.com» -path «c:Export_contracts.cmp»
Сделать Бэкап фермы, сайта
Backup-SPFarm -BackupMethod Full -Directory E:FarmBackup2016_09_01 –Force
Backup-SPSite http://london/sites/demosite -Path C:Backupsite_name.bak
Восстановить удаленный сайт
Get-SPDeletedSite | select Path , siteid
Restore-SpDeletedSite –Identity 4bff0c0e-4d56-4fec-8174-a60a16daeaac)
Включить расширенное логирование
Set-SPLogLevel -TraceSeverity VerboseEx -EventSeverity Verbose
Merge-SPLogFile -Path «C:FarmMergedLog.log» -Overwrite -StartTime (Get-Date).AddMinutes(-15)
#детальное описание ошибки по correlation ID
Merge-SPlogfile –Path c:log.log –Correlation ba05e237-0680-403a-b9f6-e49f96ac55d4
Отключаем расширенное логирование
Clear-SPLogLevel
Список баз контента 
GetSPDatabase | ?{$_.typelike«*business*»}

Подготовить базу для обновления 
(Get-SPDatabase | ?{$_.type -like «*business*»}).Provision()

Проверить базу данных контента на ошибки
Test-SPContentDatabase -name WSS_Content –webapplication http://london
Обновление конфигурации  исправление ошибок обновления
1. Запускать в командной строке под администратором
2. Меняем путь на  C:Program FilesCommon Filesmicrosoft sharedWeb Server Extensions15BIN
3. Для исправления ошибок  патчей  PSConfig.exe -cmd upgrade -inplace b2b -force -cmd applicationcontent -install -cmd installfeatures
Создать список и элемент списка
$w = Get-SPWeb «http://portal.contoso.com/Testsite»
$w.ListTemplates | Select name , type , type_client, Description
$l = $w.Lists.Add(«Project A Tasks» , «» , «Tasks»)
$l = $w.Lists.Add(«Test Survey» , «» , «Survey»)
$list = $w.Lists[«Project A Tasks»]
$newItem = $list.AddItem()
$newItem[«Title»] = «Task 4»
$newItem[«Due Date»] = «6/20/2015 11:27 AM»
$newItem[«% Complete»] = 500
$newItem.Update()
Подробно как изменять столбцы любого типа на сайте МС
#список столбцов
$l.Fields | select Title , Type , StaticName
Создать библиотеку и загрузить файл
$DocLibName = «Files 2016»
$lib = $w.Lists.Add(
$DocLibName,«», $w.ListTemplates[«Document Library»])
$file = Get-ChildItem «C:Sharedday2.docx»
$folder = $w.GetFolder($DocLibName )
$files = $folder.Files
$timestamp = Get-Date -UFormat «%Y%m%d_%H%M%S»
$fileName = [io.path]::GetFileNameWithoutExtension($file)
$ext = [io.path]::GetExtension($file)
#имя файла должно быть уникальным
$f =$files.Add($DocLibName+ «/» + $fileName+ «_»+$timestamp+$ext,$file.OpenRead(),$false)
#обновить значение поля
$f.Properties[«TestColumn»] = «ABC»
$f.Update()
Update()
#Обновялет элемент в базе данных
#Обновляет поля «Modified» и «Modified by» .
#Создает новую версию
Systemupdate()
#Обновялет элемент в базе данных
#НЕ обновляет поля «Modified» и «Modified by» .
#НЕ создает новую версию
#Запускает системные обработчики
UpdateOverwriteVersion()
#Обновляет элемент но не созлает новую версию.
#Обновялет поля  «Modified» и «Modified by» .
Загрузить файл с удаленной машины
Добавить столбец в список и  представление  
$w = Get-SPWeb «http://portal.contoso.com/Testsite»
$DocLibName = «Files 2016»
$lib = $w.Lists[$DocLibName]
$spFieldType = [Microsoft.SharePoint.SPFieldType]::Text
$lib.Fields.Add(«TestColumn»,$spFieldType,$false)
$lib.Update()
$v = $lib.Views[«All Documents»]
$spField = $lib.Fields[«TestColumn2»]
$v.ViewFields.Add($spField)
$v.Update()
Создать группу на сайте  
$groupName = «Files 2016 Visitors»
#создаем группу на сайте
$group  = $w.SiteGroups.Add($groupName, $w.EnsureUser(«contosoadministrator») , $w.EnsureUser(«contosoadministrator») , «Read Only Group»)
Выдать уникальные права на  сайт,  библиотеку или список  
#прекратить наследование прав
$w.BreakRoleInheritance($true)
$lib.BreakRoleInheritance($true)
$list.BreakRoleInheritance($true)
#создаем назначение ролей, связываем группу и роль
$roleAssignment = new-object Microsoft.SharePoint.SPRoleAssignment($group
# $w.RoleDefinitions | select name, description,basepermissions
$roleDefinition = $w.RoleDefinitions[«Read»]
#добавляем роль к назначению
$roleAssignment.RoleDefinitionBindings.Add($roleDefinition)
#Выдаем права например на сайт или на библиотеку
$w.RoleAssignments.Add($roleAssignment)
$lib.RoleAssignments.Add($roleAssignment)
$list.RoleAssignments.Add($roleAssignment)
$lib.Update()
$list.Update()
Пример готовой функции
Добавить пользователя в группу   
$user=$w.EnsureUser(«contosochen»)
#Get group object
$group=$w.SiteGroups[$groupName]
#add user to group
$group.AddUser($user)
#Получить список пользователей из AD
Import-Module activedirectory
Get-ADUser -Filter {Enabled -eq «True»} | Select-Object SamAccountName,Name,Surname,GivenName | Format-Table
Обновить поле списка
$w = Get-SPWeb «https://sp»
$l = $w.Lists[«План по оцифровке»]
foreach($item in $l.Items) { 
$item[«Дата выполнения»] = $item[«Дата выдачи»]  
$item.Update()}

Получить элементы списка
$w = Get-SPWeb «http://portal.contoso.com/Testsite»
$l = $w.Lists[«Project A Tasks»]
foreach($item in $l.Items) {«Title: {0}  Due date: {1} , Created: {2} «  -f $item[«Title»] , $item[«Due Date»] ,  $item[«Created By»] }

$L.Items  | select  Title, @{Label=”DueDate”;Expression={$_[“DueDate”]}} , @{Label=”PercentComplete”;Expression={$_[“PercentComplete”]}} |  Export-Csv -path $path

#Экспортировать  элементы списка в CSV
$path =»C:SharedTasks_export.csv»
$list = $w.Lists[«Project A Tasks»]
$list.Items | select Title , «Due Date» |  Export-Csv -path $path

Получить элементы списка используя CAML запрос
If ((Get-PSSnapIn -Name Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue) -eq $null
{ Add-PSSnapIn -Name Microsoft.SharePoint.PowerShell }
$w = Get-SPWeb «http://portal.contoso.com/Testsite»
$l = $w.Lists[«Project A Tasks»]
$query = New-Object Microsoft.SharePoint.SPQuery
$query.Query  = «0.05«
$query.ViewFields = ««
$query.ViewAttributes = «Scope=»»Recursive»»»
$query.RowLimit = 0
$ListItems = $l.GetItems( $query)
foreach($item in $ListItems) {«Title: {0}  Due date: {1} , Priority: {2}  ,PercentComplete:{3} ,   Editor: {4}»  -f $item[«Title»] , $item[«Due Date»] ,  $item[«Priority»] ,   $item[«PercentComplete»] ,  $item[«Editor»]   }
Для подготовки CAML запроса можно использовать утилиту SP CAML Query Helper 2013
Загрузить список из  csv файла
$w = Get-SPWeb «http://portal.contoso.com/Testsite»
$list  = $w.Lists[«Project A Tasks»]
$tblData = Import-CSV «C:SharedTasks.csv»
foreach ($row in $tblData)
{
   «Adding entry for «+$row.«Title».ToString()
   $newItem = $list.AddItem()
   $newItem[«Title»] = $row.«Title».ToString()
   $newItem[«Due Date»] = $row.«Due Date».ToString()
   $newItem[«% Complete»] = $row.«PercentComplete».ToString()
   $newItem.Update()
}

#Получить таблицу из базы
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = «Server=$server;Database=$database;Integrated Security=True»
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = » sp_helpdb»
$SqlCmd.Connection = $SqlConnection
$SqlCmd.CommandTimeout = 0
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$SqlConnection.Close()
$tblData = $DataSet.Tables[0]

Как сохранить элемент в таблицу

Удалить элементы списка
$w = Get-SPWeb «http://portal.contoso.com/Testsite»
$l = $w.Lists[«Project A Tasks»]
$query = New-Object Microsoft.SharePoint.SPQuery
$query.Query  = ««
$query.ViewFields = ««
$query.ViewAttributes = «Scope=»»Recursive»»»
$query.RowLimit = 0
$ListItems = $l.GetItems( $query)
for ($x=$ListItems.Count1;$x -ge 0; $x)
{
  Write-Host(«DELETED: « + $listItems[$x].Item(«ID»))
  $listItems[$x].Delete()
}
Реактивировать RBS 
$cdb = Get-SPContentDatabase –WebApplication http://sharepoint/
$rbss = $cdb[0].RemoteBlobStorageSettings
$rbss.Enable()

Управление оповещениями 
Подробно тут
Настройка собственных шаблонов оповещений

$SPweb = Get-SPWeb «https://sharepoint.com»

foreach($alert in $SPweb.Alerts) {if ($alert.Title -eq 'Документы оповещения') {write-host $alert.Title}}

$SPweb.Alerts | Export-Csv C:temp2alerts.csv -encoding utf8

    $SPlist = $SPweb.lists[«Документы»]
    $IDS = «»
    foreach($alert in $spweb.alerts)
    {
        if($alert.ListID -eq $SPlist.ID -and $alert.Title -eq 'Документы')
        {
        $IDS += $alert.ID.tostring() + «|»
        }
        write-host -nonewline «*»
    }
    write-host «deleting…»
    foreach($s in $IDS.Split(«|»))
    {
    write-host -nonewline «*»
    write-host [GUID]$s
   # $spweb.alerts.delete([GUID]$s)
    }

Найти списки с анонимным доступом 
$site = Get-SPSite «https://sp»
foreach ($web in $site.AllWebs) {foreach($list in $web.lists) {if ($web.AnonymousState.tostring() -eq «Enabled» -and $list.AnonymousPermMask.tostring() -ne «OpenWeb» -and $list.AnonymousPermMask.tostring() -ne «EmptyMask» -and $list.Title -ne «TaxonomyHiddenList» ) {write-host $web.Url ,$list.Title , $list.AnonymousPermMask.tostring() ,$web.AnonymousState.tostring(),$web.AllowAnonymousAccess.tostring() ,$web.AnonymousPermMask64.tostring()  }}}

Проверить SSID пользователя  
$domain = «domain»;
$user_name = «user1»;
$application = «https://sharepoint.com»;

$userID = $domain + «» + $user_name;
$SPuser = Get-SPUser -Identity $userID -Web $application
$objUser = New-Object System.Security.Principal.NTAccount($domain, $user_name) 
$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier]) 

Write-Host '———————————-'

$SPuser.sid
$strSID.Value

Создать группу на основе группы AD  

$SiteCollection = "http://site/sitecollection"
$ADGroupName
= "domainadgroup"
$SPGroupName
= "My Test Group A1"
$SPGroupDescription
= "Test Group A1’s Description"
$SPGroupPermission
= "Read"

#Start of script
$site
= Get-SPWeb $SiteCollection

#Check if the group already exists
if ($site.SiteGroups[$SPGroupName] -eq $null)
{

#Ensure Group/User is part of site collection users beforehand and add them if needed
$site
.EnsureUser($ADGroupName)

# Get the AD Group/User in a format that PowerShell can use otherwise there will be a string error
$ADGroupSPFriendly
= $site | Get-SPUser $ADGroupName

#Create the SharePoint Group – Group Name, Group Owner, Group Member, Group Description. Can’t add AD group yet…
$NewSPGroup
= $site.SiteGroups.Add($SPGroupName, $site.CurrentUser, $site.CurrentUser, $SPGroupDescription)
$site
.AssociatedGroups.Add($site.SiteGroups[$SPGroupName]);
$NewSPAccount
= $site.SiteGroups[$SPGroupName]

#Assign the Group permission
$GroupAssignment
= New-Object Microsoft.SharePoint.SPRoleAssignment($NewSPAccount)
$GroupRole
= $site.RoleDefinitions[$SPGroupPermission]
$GroupAssignment
.RoleDefinitionBindings.Add($GroupRole)
$site
.RoleAssignments.Add($GroupAssignment)

#Add the AD Group/User to the group, can’t be done during group creation when using Powershell otherwise errors so is done now.
Set-SPUser -Identity $ADGroupSPFriendly -Web $SiteCollection -Group $SPGroupName
}
$site
.Dispose()
}

Автор: Roman D
Дата публикации: 2016-09-08T07:16:00.001-07:00