9. gyakorlat
WSH után => PowerShell
- A WSH-t ma is használjuk
-
.NET Framework 2.0, 2005 után PowerShell
-
A PowerShell elsősorban menedzsment célra jó
- Shell script: Általános script programozási környezet Windows operációs rendszer alatt
Kiterjesztés: .ps1
Futtatás teljes (abszolút) útvonalal
Ha van szóköz a könyvtárban, akkor a & jelet írjuk a parancs elé, és " közé írjuk a parancs nevét
Get-Help
Segítséget ír ki a parancsokhoz
Alapból a parancsoknak csak a szintaxisa érthető el
Update-Help- lokálisan telepíti a dokumentációt
A PowerShell objektum orientált
.Net ObjectCOM ObjectWMI Object
Get-Member
Alapvető PowerShell parancsok
alias, deffiniált átnevezések (aliasok)gcm-Get-Command, parancsok listázásaecho-Write-Output, képernyőre írásWrite-Host-[Console]::WriteLine
Get-Help- rövid leírás a parancsokrólUpdate-Help- Manuálok letöltése és telepítéseGet-Help--full Write-Hostset-alias gh get-help
ps-Get-Process, futó folyamatok listázásaSleep-Start-Sleep, várakozás
Fájlkezelés
dir,ls-Get-ChildItem
A PowerShell nem a fájlrendszerre fókuszál, hanem adatforrásokra.
New-Item- fájl vagy könyvtár létrehozásaCopy-Item <forrás> <cél> [-recurse]- fájlok másolásaRemove-Item- fájl törléseMove-Item- fájl áthelyezéseRename-Item- fájl átnevezéseGet-Item- fájl visszaadásaTest-Pathfájl létezik-e?
Parancsok felépítése
Parancs Szemantikai felépítése
Standard:
Ige-Főnév
d
Változók
$név=érték
;, mint univerzális sorelvelasztó (sortörés helyett...)
Támogatott típusok
| Adattípus | Értelmezése | Példa |
|---|---|---|
| [int] | egész szám (32bit) | -273, 0, 1, 10 |
| [byte] | 8 bit, bájt | 0, 1, 254, 255 |
| [boolean] | logikai | $false, $true |
| [char] | karakter (unicode 16 bit) | a, b, c, 1, 2, 3, # |
| [string] | Szöveg | "FTC" |
| [single] | 32 bites valós | 3.14159 |
| [datetime] | Idő | April 1, 2008 |
Változók láthatósága
F
Változó behelyettesítés
Basically, u.a. mint a bash-ben
$a="alma"$afa- ""${a}fa- almafa- $ jel semlegesítése:
`$ ""közötti változók behelyettesítésre kerülnek'közötti nem kerül behelyettesítveecho '$a'-$a
- DE!
"echo '$i vége'"- $1 behelyettesítésre kerül -
Nincs input átirányítás (
<,<<)- helyette: több soros szöveg
Tömbök
$tömb="alma", "körte", "barack"
-contains- tartalmazás-eq,-ne- Az összes elem, ami egyenlő (vagy nem) az adott értékkel-lt,-gt- Az összes elem, ami kisebb (vagy nagyobb) az adott értéknél-le,-gt- Kisebb vagy egyenlő, Bagyobb vagy egyenlő-join,-split,-csplit(case sensitive-split, kis- és nagybetű)
Associatív tömb
$atömb=@{"kulcs"="érték"; "kulcs2"="érték2"}- Elemek elérése:
$at[a]vagy$at.a - Értékadás:
$at[a]=10 - Új elem hozzáadása:
$at+=@{c=11} - Kiírása:
$at
Elágazás
Összehasonlító operátorok, mint a tömböknél.
-eq,-ne,-gt,-lt,-le,-ge-not,-and,-or,-xorlogikai tagadás, és, vagy- Szövegnél:
-ceq, Kis, nagybetű különböző,-ieqnem különböző, -like*,?,[ab.] karakterek,-matchreg. kif. használat
If:
foreach,Foreach-Object- szűrő
TODO
Jövő héten nincs jelenléti óra