PowerShell helloworld

PowerShell HelloWorld: Kezdő lépések a Microsoft parancssori környezetében

Szeretnél megismerkedni a PowerShell-lel, de nem tudod, hol kezdd? Ebben a cikkben végigvezetlek a PowerShell alapjain, a "Hello World" programtól kezdve a gyakorlati alkalmazásokig. Akár kezdő vagy, akár tapasztalt rendszergazda, találsz itt hasznos információkat.

Bevezetés a PowerShell világába

A Microsoft PowerShell az egyik legerősebb parancssori felület és szkriptnyelv, amely Windows rendszerekhez készült. 2006-os megjelenése óta a PowerShell forradalmasította a Windows-alapú rendszerek adminisztrációját és automatizálását. A .NET Framework-re épülő PowerShell sokkal többet nyújt, mint egy egyszerű parancssori felület – valójában egy teljes értékű programozási környezet.

De mi teszi a PowerShellt különlegessé? A hagyományos parancssori interfészekkel ellentétben, amelyek szöveges kimenettel dolgoznak, a PowerShell objektumokat kezel. Ez azt jelenti, hogy a parancsok kimenete strukturált adatokat tartalmaz, amelyekkel közvetlenül dolgozhatunk, anélkül, hogy szövegfeldolgozási trükkökhöz kellene folyamodnunk.

Az első PowerShell parancs: Hello World!

Ahogy minden programozási nyelv tanulását, a PowerShell megismerését is érdemes a klasszikus "Hello World" példával kezdeni. Ez a lehető legegyszerűbb program, amely mindössze annyit csinál, hogy kiírja a képernyőre a "Hello World!" szöveget.

A PowerShellben ezt többféleképpen is megtehetjük:

# 1. módszer: Write-Host használata
Write-Host "Hello World!"

# 2. módszer: Echo alias használata
echo "Hello World!"

# 3. módszer: Egyszerű kiíratás
"Hello World!"

Bármelyik fenti módszert választod, a PowerShell konzolban megjelenik a "Hello World!" szöveg. De mi a különbség a fenti módszerek között?

  • A Write-Host parancs kifejezetten a konzolra való kiírásra szolgál
  • Az echo valójában a Write-Output parancs aliasa
  • A harmadik módszer a legrövidebb: a PowerShellben ha egy string értéket írsz be önmagában, azt a rendszer automatikusan kiírja

PowerShell indítása és az első lépések

Mielőtt továbbmennénk, nézzük meg, hogyan indíthatod el a PowerShellt:

  1. Nyomd meg a Windows + X billentyűkombinációt, majd válaszd a "Windows PowerShell" vagy "Windows PowerShell (Rendszergazdaként)" opciót
  2. Írd be a Start menü keresőjébe, hogy "PowerShell"
  3. Futtasd a powershell.exe fájlt közvetlenül a Windows rendszermappából

Ha sikeresen elindítottad a PowerShellt, egy kék háttérrel rendelkező konzol ablak jelenik meg, ahol beírhatod a parancsokat.

A PowerShell verzióinak különbségei

A PowerShell több verzióban létezik, és érdemes tudni, melyikkel dolgozol:

  • PowerShell 5.1: A Windows 10 és Windows Server 2016 alapértelmezett verziója
  • PowerShell Core 6.x: Keresztplatformos verzió, amely Windows, Linux és macOS rendszereken is futtatható
  • PowerShell 7.x: A legújabb verzió, amely egyesíti a PowerShell 5.1 és a PowerShell Core előnyeit

A PowerShell verzióját a következő paranccsal ellenőrizheted:

$PSVersionTable

Hello World szkript létrehozása

Az egyszeri parancsok mellett érdemes megtanulni, hogyan készíthetsz PowerShell szkripteket. Ezek .ps1 kiterjesztésű fájlok, amelyekben több PowerShell parancsot tárolhatsz és futtathatsz egyszerre.

Íme, hogyan készíthetsz egy egyszerű Hello World szkriptet:

  1. Nyiss meg egy szövegszerkesztőt (pl. Jegyzettömb vagy Visual Studio Code)
  2. Írd be a következő kódot:
# Ez egy egyszerű Hello World szkript
Write-Host "Hello World a PowerShell szkriptből!"
Write-Host "Ma $(Get-Date -Format 'yyyy.MM.dd') van."
Write-Host "Üdvözöllek, $env:USERNAME!"
  1. Mentsd el a fájlt HelloWorld.ps1 néven
  2. Nyisd meg a PowerShellt, navigálj a fájl mappájába, és futtasd a szkriptet:
.\HelloWorld.ps1

Ha minden jól megy, a szkript kiírja az üdvözlő üzenetet, a mai dátumot és a felhasználónevedet.

PowerShell futtatási szabályzatok megértése

Előfordulhat, hogy a fenti szkript futtatásakor hibaüzenetet kapsz. Ez a PowerShell biztonsági funkcióinak köszönhető. A PowerShell alapértelmezés szerint korlátozza a szkriptek futtatását, hogy megvédje a rendszert a rosszindulatú kódoktól.

A futtatási szabályzat (Execution Policy) beállításait a következő paranccsal ellenőrizheted:

Get-ExecutionPolicy

Ha szkripteket szeretnél futtatni, módosítanod kell ezt a beállítást:

# Csak rendszergazdaként futtatva működik
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

A különböző futtatási szabályzatok:

  • Restricted: Nem engedélyezi a szkriptek futtatását (alapértelmezett)
  • AllSigned: Csak digitálisan aláírt szkripteket engedélyez
  • RemoteSigned: A helyi szkripteket korlátozás nélkül, a távoli szkripteket csak aláírással engedi futtatni
  • Unrestricted: Minden szkriptet engedélyez (nem ajánlott)

Hello World továbbfejlesztve: Interakció a felhasználóval

Készítsünk egy kicsit összetettebb példát, amely már interakcióba lép a felhasználóval:

# Felhasználói interakciót tartalmazó Hello World
$nev = Read-Host -Prompt "Kérlek, add meg a neved"
$kor = Read-Host -Prompt "Hány éves vagy?"

Write-Host "Hello $nev! Örülök, hogy megismerhetlek."

if ([int]$kor -lt 18) {
    Write-Host "Még fiatal vagy, előtted az élet!"
} elseif ([int]$kor -lt 65) {
    Write-Host "A legjobb korban vagy!"
} else {
    Write-Host "A bölcsesség korába léptél!"
}

Write-Host "A PowerShell világában sok érdekes dolgot fedezhetsz fel!"

Ez a szkript már bemutatja a változók használatát, a felhasznál