Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Анатолий Кулаков «Windows PowerShell во имя добра»

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Анатолий Кулаков «Windows PowerShell во имя добра»

Ровно 10 лет назад была выпущена первая версия революционного средства для автоматизации - PowerShell. С тех самых пор все системные администраторы Windows яростно и неистово боготворят это чудо инженерной мысли. За многие годы стремительного развития уже
не осталось преград, которые были бы не под силу новой командной строке Windows. И в этот юбилейный год мы соберёмся вместе, что бы пополнить число фанатов PowerShell новыми пользователями.

В докладе мы выясним, чем так примечательна эта командная строка. Какие задачи она призвана решать. Какие средства разработки и тестирования предлагает. Познакомимся с синтаксисом и командами, окружением и инструментами, точками расширения и отладки. Узнаем как автоматизировать скучные задачи и окончательно забыть про повседневную рутину.

Avatar for DotNetRu

DotNetRu

July 23, 2016

More Decks by DotNetRu

Other Decks in Programming

Transcript

  1. Get-ChildItem -Path "$sourceDir" -Filter "*.cs" -Recurse | Where-Object -FilterScript {

    -not $PSItem.IsReadOnly } | Sort-Object -Property FullName | Select-Object –Property @{ Name = "RelativePath"; Expression = { Resolve-Path $PSItem.FullName -Relative } }, FullName | ForEach-Object –Process { $PSItem.RelativePath; Set-ItemProperty -Path $PSItem.FullName -Name IsReadOnly -Value $false } | Set-Content -Path (Join-Path -Path $sourceDir -ChildPath "log.txt")
  2. ls $sourceDir *.cs -r | ? {-not $_.IsReadOnly} | sort

    FullName | select @{N="Rel";E={rvpa $_.FullName -r}}, FullName | % {$_.Rel;sp $_.FullName IsReadOnly $false} | sc (join-path $sourceDir "log.txt")
  3. ls "$sourceDir" -Filter "*.cs" -Recurse | where { -not $_.IsReadOnly

    } | sort FullName | select @{ Name = "RelativePath"; Expression = { Resolve-Path $_.FullName -Relative } }, FullName | foreach { $_.RelativePath; Set-ItemProperty $_.FullName IsReadOnly $false } | Set-Content (Join-Path $sourceDir "log.txt")
  4. •Alias •FileSystem •Certificate •Environment •Function •Variable •Registry • WSMan •

    GithubFS • Dropbox • MSSQL • FTP • E-Mail • Active Directory • ...