Serverové systémy Microsoft Windows - fit.vutbr.cz $error . Obsahuje poslední chybu ... Constants) Serverové systémy ... Připojení k WMI objektu. Cmdlet . Get-WmiObject (alias

  • View
    220

  • Download
    6

Embed Size (px)

Text of Serverové systémy Microsoft Windows - fit.vutbr.cz $error . Obsahuje poslední chybu ......

  • Serverov systmy Microsoft Windows

    IW2/XMW2 2013/2014

    Jan Fiedor ifiedor@fit.vutbr.cz

    Fakulta Informanch Technologi Vysok Uen Technick v Brn

    Boetchova 2, 612 66 Brno

    Jan Fiedor

    Revize 7. 5. 2014

    7. 5. 2014 1 / 30 UITS FIT VUT Brno

  • Windows PowerShell

    Pro sprvu serveru a Active Directory

    Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 2 / 30 Jan Fiedor

  • Konzole (pkazov dek) systmu Windows B na platform .NET (.NET Framework) Pracuje s .NET objekty (object-based) namsto textu Manipulace s objekty pomoc cmdlet

    Jednoduch (single-function) vestavn pkazy

    Podpora vech nstroj pro pkazovou dku (cmd)

    Skriptovac jazyk Imperativn, dynamicky typovan skriptovac jazyk Pstup ke vem objektm a funkcm platformy .NET

    Windows PowerShell Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 3 / 30 Jan Fiedor

  • Vpis seznamu vech cmdlet / alias (zkratek)

    Vpis npovdy k cmdletu Definice novho aliasu (zkratky) cmdletu

    Zklady prce s cmdlety Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 4 / 30 Jan Fiedor

    PS C:\> get-command * -CommandType { cmdlet | alias }

    PS C:\> get-help [ -detailed ] [ -full ]

    PS C:\> set-alias

  • Cmdlet Format-List (alias fl) Seznam objekt, vce vlastnost, objekty za sebou

    Cmdlet Format-Table (alias ft)

    Tabulka objekt, vce vlastnost, kad objekt 1 dek

    Cmdlet Format-Wide (alias fw)

    Tabulka objekt, jedna vlastnost ve vce sloupcch

    Formtovn vstupu Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 5 / 30 Jan Fiedor

    PS C:\> format-list Property -GroupBy

    PS C:\> format-table Property -GroupBy

    PS C:\> format-wide Property -GroupBy

  • Cmdlet Sort-Object (alias sort) azen objekt podle hodnot jejich vlastnost

    Cmdlet Where-Object (aliasy where a ?)

    Filtrovn objekt na zklad pedloenho skriptu

    Cmdlet Select-Object (alias select) Vbr objekt na zatku, konci, uritch pozicch,

    azen, filtrovn a vbr objekt Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 6 / 30 Jan Fiedor

    PS C:\> sort-object Property [-CaseSensitive] [-Culture ] [-Descending] [-Unique]

    PS C:\> where-object -FilterScript

    PS C:\> select-object [First ] [-Last ] [-Skip ] [-Index ] [-Unique]

  • Peposln vstupu (objekt) jednoho pkazu na vstup jinho pkazu pes rouru (pipe) Pklady

    Zetzovn pkaz (pipelining) Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 7 / 30 Jan Fiedor

    PS C:\> | [ | ]

    # Vpis tabulky nzv slueb seskupench podle stavu get-service | sort-object -Property Status | format-table -Property Name -GroupBy Status # Vpis 5 proces, kter maj nejvy vyuit pamti get-process | sort-object -Property WS -Descending | select-object -First 5 # Vpis vech slueb, jen aktuln b na potai get-service | where-object { $_.Status -eq "running" }

  • Soubory s pponou .ps1 Spoutn se d nastavenm zsad spoutn

    Zjitn aktulnho nastaven zsad spoutn Nastaven zsad spoutn pro konkrtn rozsah

    Skripty a omezovn jejich spoutn Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 8 / 30 Jan Fiedor

    PS C:\> get-executionpolicy

    PS C:\> set-executionpolicy -Scope

    Rozsah Popis

    Process Nastaven zsad spoutn ovlivuje aktuln PowerShell proces

    CurrentUser Nastaven zsad spoutn ovlivuje aktulnho uivatele

    LocalMachine Nastaven zsad spoutn ovlivuje vechny uivatele na potai

  • Podporovno celkem 7 rovn zsad spoutn

    rovn zsad spoutn skript Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 9 / 30 Jan Fiedor

    rove Verze Popis

    Default 1.0 Vchoz nastaven zsad spoutn (aktuln Restricted)

    Restricted 1.0 Nelze spoutt skripty ani natat konfiguran soubory

    AllSigned 1.0 Vechny skripty a konfiguran soubory mus bt podepsny (signed) dvryhodnou autoritou

    RemoteSigned 1.0 Vechny skripty a konfiguran soubory staen z internetu mus bt podepsny (signed) dvryhodnou autoritou

    Unrestricted 1.0 Lze spoutt skripty a natat konfiguran soubory, spoutn skript staench z internetu vyaduje potvrzen od uivatele

    Bypass 2.0 Lze spoutt skripty a natat konfiguran soubory, spoutn skript staench z internetu nevyaduje potvrzen uivatele

    Undefined 2.0 Odebere aktuln nastaven zsad spoutn z danho rozsahu (nelze pout pro rozsah zsad skupiny (Group Policy scope))

  • Deklarovny pi prvnm pouit (pi piazen dat) Nzvy mus zanat znakem dolar ($) Pklady

    Deklarace promnnch piazenm

    Deklarace promnn pomoc cmdletu

    Promnn (Variables) Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 10 / 30 Jan Fiedor

    $str = "text" # Deklarace vce promnnch zrove $str1, $str2, $str3 = "text1", "text2", "text3" # Deklarace promnnch konkrtnho datovho typu [int]$number = 12

    set-variable name str value "text"

  • Promnn Vznam

    $_ Aktuln pipeline objekt (aktuln objekt pi iterovn pes objekty)

    $? Obsahuje vsledek (spch / nespch) posledn operace

    $args Obsahuje parametry pkazov dky

    $error Obsahuje posledn chybu

    $env: Reprezentuje promnnou prosted danho nzvu ($env:Path, )

    $foreach, $switch Enumertory (ve foreach smyce, ve switch vtven)

    $input Vstup, jen je posln pes rouru (piped) do funkce nebo bloku kdu

    $match Hashovac tabulka obsahujc poloky nalezen match opertorem

    $myinvocation Obsahuje informace o vykonvanm skriptu nebo pkazu

    $host Obsahuje informace o hostiteli vykonvajcm dan skript i pkaz

    $true, $false, $null Speciln hodnoty (pravda, nepravda, nulov objekt)

    $stacktrace Obsahuje zsobnk voln (stack trace)

    Speciln promnn Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 11 / 30 Jan Fiedor

  • Jejich hodnota neme bt zmnna Nemohou bt smazny Pklady

    Deklarace konstanty Pouit konstanty

    Konstanty (Constants) Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 12 / 30 Jan Fiedor

    set-variable name CSTR value "ctext" option constant

    $str = $CSTR

  • Indexovan seznamy hodnot (.NET objekt) Pklady

    Definice pole Konkatenace dvou pol Pstup k prvkm pole (prvn prvek m index 0)

    Pole (Arrays) Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 13 / 30 Jan Fiedor

    $arr = @("text", 2, 4.6)

    $arr2 = $arr + @("text2", 1, 3.5)

    # Prvn prvek pole $first = $arr[0] # Posledn prvek pole $last = $arr[$arr.count - 1]

  • Cmdlet Write-Host Vypisuje objekty v hostiteli (nejastji konzole)

    Cmdlet Write-Output (aliasy echo a write)

    Posl objekty dalmu pkazu v zetzen (pipeline) Pokud dal pkaz nen, vyp se objekty do konzole

    Vstup (Output) Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 14 / 30 Jan Fiedor

    write-host NoNewline Separator BackgroundColor # Nastaven barev nemus bt ForegroundColor # podporovno hostitelem

    write-output write echo

  • Informace o datovm typu promnn

    Informace o prvcch (metodch, ) promnn

    Petypovn promnn

    Pklad

    Prce s datovmi typy Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 15 / 30 Jan Fiedor

    PS C:\> .GetType()

    PS C:\> get-member InputObject

    = []

    $str = "12:00"; write-host $str.GetType() $date = [datetime]$str; write-host $date.GetType() get-member -InputObject @($str, $date) # Prvky Object[] @($str, $date) | get-member # Prvky String a DateTime

  • Alias cmdletu ForEach-Object Pouit

    Pklad

    Foreach Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 16 / 30 Jan Fiedor

    # Jako klov slovo, pstup k prvku pes foreach ( in ) { } # Jako cmdlet, pstup k prvku pes promnnou $_ | foreach { }

    $arr = @("text", 2, 4.6) # Iterace pes prvky pole foreach ($item in $arr){ $item.GetType().FullName } # Iterace pes prvky poslan pes rouru (pipe) $arr | foreach { $_.GetType().FullName }

  • Pouit

    Pklad

    For a while Serverov systmy Microsoft Windows Sprva serveru a Active Directory pomoc Windows PowerShell

    7. 5. 2014 UITS FIT VUT Brno 17 / 30 Jan Fiedor

    # For for (; ; ) { } # While while () { }

    $arr = @("text", 2, 4.6) # Iterace pes prvky pole pomoc for for ($i = 0; $i -lt $arr.Count; $i++) { $arr[$i] } # Ekvivalentn zpis s vyuitm foreach foreach ($i in (0 .. ($arr.Count 1))) { $arr[$i] } # Iterace pes prvky pole pomoc while $i = 0; while ($i -lt $arr.Count) { $arr[$i]; $i++ }

  • Opertor C / C++ Popis

    -eq == Je rovno

    -ne != Nen rovno

    -gt > Vt ne

    -ge >= Vt ne nebo rovno

    -lt < Men ne

    -le

  • Pouit

    Pklad