PowerShell II
Sem vložte podnadpis
CMDLETS
Skriptovanie v powershellu ma niekolko rozdielov oproti cmd . Powershell cmdlets , čo su príkazy zložene z viacerých slov a spojene pomlčkou . Tieto príkazy fungujú na systéme sloveso-podstatne meno a príkazy su plne modulárne - tu je niekolko slovies , dohromady je ich asi 200
get - ziskava hodnotu napr get-time získa systemový čas
set - nastavuje hodnotu (set-time nastaví čas)
write - zapisuje text
Ďalšie slovesá si vysvetlíme v ďalšich dieloch
BEZPEČNOSŤ
Microsoft pri vytvaraní powershellu dbal na bezpečnosť . Dôvodom boli virusy vo VBS ktoré terorizovali internet a nechceli aby sa to dalo vytovriť aj v powershelli .
Skripty su asociované z notepadom - ak kliknete na skript , otvorí sa vám v notepade . Musíte kliknuť pravým a v možnostiach je otvoriť v Powershelli . Zabranuje to nahodnému spusteniu
Bezpečnostne politiky - táto vec nastavuje , aký prísny powershell bude tj. aké skripty zamietne. Defaultne je nastavený na vysoku úroveň (žiadne skripty nie su povolene , jedine shell)
Ak to chcete zmeniť , použijete príkaz set-ExecutionPolicy RemoteSigned - tento príkaz nastaví , že pôjde spustiť všetky podpisané skripty , a kedže vaše skripty su automatikcy bezpečne , už vám nič nebráni skirptovať .
HELLO WORLD
Lgendárny program v powershell vyzerá takto
- $hello = hello world!!!
- write-host $hello
Rozpíšeme si to
$hello = hello world!!!- vložili sme do premennej hello text hello world . Premenne v powrshell pouźivaju ako identifikator dolár ($) na rozdiel od cmd (kde je premenna uzavrena v percentach %%)
write-host $hello - príkaz , ktorý na vypíše do shellu obsah premennej hello
Ak by ste chceli spustiť skript zo shellu , musíte použiť toto ./
- PS C:\> ./skript.ps1
Ak to tam nedáte , PS si bude myslieť , že zadávate príkaz
Powershell III - cmdlet , pipeline
