Ключевые слова статьи ' powershell ' ...
PowerShell: Создаём контакты в Outlook пакетом–из AD, csv, и не только
Продолжаю тему пакетной обработки пользователей.На этот раз возникла потребность создать в Outlook карточки контактов по данным учётных записей пользователей. Причём не важно – берём данные из .csv файла или из AD. Решим простую на первый взгляд задачу.
Postmaster, abuse и прочие *master для наших доменов: поддерживаем RFC-2142 на Яндексе
Уже писал подобную статью для случая, когда почтовая система реализована на базе MS Exchange, и DNS зона размещена на Ваших DNS серверах. Теперь опишу реализацию той же задачи, но для случая, когда и DNS зона, и почта поддерживается сервисом Яндекса “Почта для домена”.
API Яндекс-Почта для домена + PowerShell: создаём ящики пакетом из .csv файла
В некоторых предыдущих статьях уже затрагивал Яндекс API сервиса “Почта для домена”. Могу похвастаться тем, что добил таки модуль PowerShell, реализующий командлеты для использования указанного API в PowerShell. И в качестве первой задача – создание произвольного количества ящиков и группы рассылки, состоящей из этих ящиков, на базе данных из .csv файла.
API Яндекс:Почта для домена и PowerShell: скриптуем get_token
Продолжаю небольшую серию статей на тему Почта для домена от Яндекс. Естественно, готовлю сценарии для автоматического создания необходимых ящиков на указанном сервисе. Яндекс предоставил нам API для этих целей. Однако, для всех методов предварительно требуется получить token (API get_token), идентифицирующий Вас и Ваш основной домен. И получить этот token через сценарий оказалось непростой задачей. Решим её!
PowerShell: формируем samAccountName сотрудника транслитерацией из его ФИО
Ранее уже приводил сценарии, позволяющие изменить атрибуты учётных записей в AD по данным csv файла. Сегодня реализую простейшую задачу: по Фамилии, Имени и Отчеству в csv файле сгенерирую samAccountName, lname (для почты). Генерировать буду по одним и тем же правилам, но при они могут различаться – на samAccountName достаточно жёсткие ограничения по длине накладывает ОС (по сути – 14 символов, если всё ещё стремиться к поддержке WINS, хотя кому это сейчас уже надо?).
PowerShell: convertFrom-Csv, delimiter и проблемы использования табуляции
Банальная задача – разбор .csv файла, в котором в качестве разделителя использована табуляция. Но убил 10 минут на эту задачу. Сразу пример кода:
get-content ` -path $csvFile ` | convertFrom-csv -Delimiter ("`t".Normalize())
Обратили внимание на конструкцию ("`t".Normalize())
? Это — самый просто путь, чтобы указать символ табуляции, который я нашёл. Очевидный на первый взгляд вариант '`t'
не прошёл, вариант "`t"
— тоже не прошёл. Видите ли — строка содержит два символа, а ожидается один. В общем и целом, как я понял, нормализацию (в том числе — и подстановка специальных символов типа табуляции) происходит в powerShell не на этапе интерпретации строковых констант, а уже при выводе строк! Поэтому, если Вы явно планируете анализировать текст и ждёте в нём специальные символы перед анализом — нормализуйте сначала свои строковые константы.
P.S. Вариант ('`t'.Normalize())
также не подходит. Специальные знаки ожидаются только в макростроке, в чистой строковой константе PoSh их не ждёт…
PowerShell: Add-Member, другие поточные фукнции, $_ и замыкания
Зачастую при добавлении ряда статических свойств объекту класса PSObject при вычислении следующих свойств уже хочется использовать значения добавленных ранее. И при этом не хочется, чтобы код выглядел громоздко. В этой заметке как раз и предлагаю решение этой задачи.
PowerShell: транслитерация по-быстрому
При работе с подрядчиками пришлось разбирать кучу файлов от них, названных транслитом, и раскладывать их по папкам нашего архива. Уж очень быстро и просто получилась транслитерация на powershell, поэтому решил написать.
PowerShell: пакетная генерация .pdf файлов (или tiff-to-pdf своими силами)
Продолжая тему пакетной обработки изображений (для электронного архива документации), пришёл к необходимости для некоторых подрядчиков генерировать .pdf (ну – для тех, кто в .tiff ничего, кроме первой страницы увидеть не может). Использовать для этого всевозможные принтеры не очень хочется по ряду причин (основная – разворачивать подобное решение по сети не особо удобно, хотя GPP в этом могли бы помочь). Поэтому искал и нашёл решение на powershell + .net.
PowerShell: массовая обработка картинок (“сжимаем” tiff на powershell, grayscale TIFF to black & white)
Работаю над организацией файлового хранилища и сценариев к нему для хранения электронного архива чертежей. Одна из возникших задач – рядом с файлом чертежа в формате CAD должна лежать “картинка”. Для роли картинки выбрал .tiff. Основная причина – необходима поддержка хранения нескольких страниц в одном файле, причём – страниц разного размера.
Как получен .tiff – не тема этой статьи (через сканер, через печать на виртуальный принтер – не важно). Суть в том, что при обработке tiff файла в Microsoft Office Document Imaging, или при “неудачном” сканировании мы имеем файл с 32 bits per pixel и размером под 1Мб даже для формата А4, что недопустимо (хранить то не проблема, а по почте подрядчикам хотя бы 100 чертежей как будем посылать?).
Вот и пришлось написать маленький сценарий на PoSh, который “сожмёт” .tiff файлы.