Bár ez a sorozat nem felépített egy vizsga körül, a PowerShell tanulás az egyik legfontosabb dolog, amit tehetünk hálózati rendszergazdaként, tehát ha van valami, amit megtanulni, hogy segítsen az informatikai karrierednek, ez az. Plusz, nagyon szórakoztató.
Bevezetés
A PowerShell a legerősebb automatizációs eszköz, amelyet a Microsoft kínál, és mindkettő egy héj és egy szkriptnyelv.
Kérjük, vegye figyelembe, hogy ez a sorozat a Windows 8 és a Server 2012 szervizcsomaggal ellátott PowerShell 3 rendszeren alapul. Ha Windows 7 operációs rendszert futtat, töltse le a PowerShell 3 frissítést a folytatás előtt.
Ismerje meg a konzolt és az ISE-t
Két lehetőség van arra, hogy a PowerShell-tel érintkezzen a dobozból, a Console-ból és az Integrált Scripting Environment-ből (más néven ISE-ből). Az ISE jelentősen javult a PowerShell 2 szoftverrel szállított szörnyű verzióból, és megnyitható a Win + R billentyűkombináció megnyomásával, hogy megjelenjen egy futódoboz, majd írja be a powershell_ise parancsot és nyomja meg az enter billentyűt.
A Súgó használata
A PowerShell korábbi verzióiban a Windows telepítésekor a súgófájlok szerepeltek. Ez jó megoldás volt a legtöbb esetben, de jelentős problémát okozott nekünk. Amikor a PowerShell súgócsoportnak le kellett állítania a súgófájlokat, a PowerShell fejlesztők még mindig foglalták a kódolást, és változtattak. Ez azt jelentette, hogy amikor a PowerShell szállított, a súgófájlok helytelenek voltak, mert nem tartalmazták a kóddal kapcsolatban újabb módosításokat. A probléma megoldásához a PowerShell 3 nem tartalmaz súgófájlokat a fiókból, és tartalmaz egy frissíthető súgórendszert. Ez azt jelenti, hogy mielőtt bármit megtennél, letölteni szeretnéd a legfrissebb súgófájlokat. Ezt a PowerShell konzol megnyitásával és futtatásával teheti meg:
Update-Help
Get-Help –Name Update-Help
A második kérdés megválaszolásához létezik egy bizonyos szintaxis, amely segít a fájlok követésében, és itt van:
- A paraméter neve és típusa közötti szögletes zárójelek azt jelentik, hogy opcionális paraméter, és a parancs csak anélkül működik, hogy rajta lenne.
- A paraméterek neve körüli szögletes zárójelek azt jelzik, hogy a paraméterek pozícióparaméterek.
- A szögben levő zárójelben lévő paraméter jobb oldalán az a paraméter adja meg az adattípust, amelyet a paraméter vár.
Miközben meg kell tanulnod a súgófájl szintaxisának olvasását, ha egy adott paraméterrel kapcsolatban még mindig bizonytalan vagy, add hozzá - Teljesen a get help parancs végéig, és görgessen le a paraméterekhez, ahol mindegyikről többet fog elmondani paraméter.
Get-Help –Name Update-Help –Full
Get-Help –Name *service*
Biztonság
Ez nem lenne megfelelő bevezetés a biztonság megemlítése nélkül. A PowerShell csapata legnagyobb aggodalma az, hogy a PowerShell lesz a legfrissebb és legnagyobb támadási pont a forgatókönyvek számára. Helyeztek néhány biztonsági intézkedést annak biztosítására, hogy ez ne történjen meg, szóval nézzük meg őket.
A védelem legegyszerűbb formája abból fakad, hogy a PS1 fájlkiterjesztés (a PowerShell parancsfájl jelölésére használt kiterjesztés) nem regisztrálva van egy PowerShell állomáson, amely ténylegesen bejegyzett a Notepad-al. Ez azt jelenti, hogy ha duplán kattintunk egy fájllal, a futás helyett a jegyzettömb segítségével nyílik meg.
Másodszor, nem tudja futtatni a parancsfájlokat a shellből, csak írja be a parancsfájl nevét, meg kell adnia a parancsfájl teljes elérési útját. Tehát ha a C meghajtón szkriptet akarsz futtatni, írd be:
C:
unme.ps1
Vagy ha már a C meghajtó gyökerében van, akkor a következőket használhatja:
unme.ps1
Végül a PowerShell valamilyen úgynevezett végrehajtási házirendet tartalmaz, amely megakadályozza a régi parancsfájlok futtatását. Valójában alapértelmezés szerint nem tudsz parancsfájlokat futtatni, és a végrehajtási irányelveket módosítani kell, ha engedélyezni szeretné őket. 4 kiemelkedő végrehajtási irányelv létezik:
- Korlátozott: Ez a PowerShell alapértelmezett beállítása. Ez a beállítás azt jelenti, hogy egyetlen parancsfájl sem futtatható, függetlenül annak aláírásától. Az egyetlen dolog, ami a PowerShell-ben futtatható ezzel a beállítással, egyedi parancs.
- AllSigned: Ez a beállítás lehetővé teszi a szkriptek futtatását a PowerShell-ben. A szkriptnek társított digitális aláírással kell rendelkeznie egy megbízható kiadótól. A szkriptek futtatása a megbízható kiadók előtt történik.
- RemoteSigned: Ez a beállítás lehetővé teszi a szkriptek futtatását, de megköveteli, hogy az internetről letöltött szkript és konfigurációs fájlok társított digitális aláírással rendelkezzenek egy megbízható kiadótól. A helyi számítógépen futó parancsfájlokat nem kell aláírni. A parancsfájl futtatása előtt nincsenek utasítások.
- Korlátlan: Ez lehetővé teszi az aláírással ellátott parancsfájlok futtatását, beleértve az Internetről letöltött összes szkriptet és konfigurációs fájlt. Ez magában foglalja az Outlook és a Messenger programban található fájlokat. A kockázat itt szkriptek futása aláírás vagy biztonság nélkül. Újra bevezettük, hogy ezt a beállítást soha nem adjuk meg.
Ha meg szeretné tudni, hogy milyen aktuális végrehajtási házirend van beállítva, nyisson meg egy PowerShell konzolt, és írja be:
Get-ExecutionPolicy
Megjegyzés: Ezt egy megnövelt PowerShell konzoltól kell elvégezni.
Set-ExecutionPolicy RemoteSigned
Felelősség kizárása: A PowerShell parancs megfelelő terméke cmdlet, és mostantól fogjuk használni ezt a helyes terminológiát. Sokkal inkább úgy érezték, megfelelőnek ítélik őket a bevezetés parancsára.
Ha bármilyen kérdése van, akkor tweet @taybgibb, vagy csak hagyj egy megjegyzést.