PowerShell cmdlets. Mi a Windows PowerShell és mi szükséges ahhoz, hogy mi legyen

November 5., 2014 20: 07-kor

Ugrás indítása Powershell (I. rész)

  • Rendszer adminisztráció ,
  • PowerShell.
  • Tutorial

Csak automatizálás. Csak PowerShell.

Előszó

Hobbiként és az idő jelenlétében tanítok diákokat az UKIT-nek (korábbi Moszkvai Állami College) információs technológiák). A ebben a pillanatban Kevés időm van arra, hogy egy diákcsoportot adjak, de elég ahhoz, hogy hozzászólást készítsünk itt a Habre-en.

Rendszergazdaként dolgozom egy nagy, nem IT-társaságban, amelynek nagy sztringje van az informatikai erőforrásokhoz. A tevékenység jellege szerint úgy tűnik, hogy dönt nagyszámú Felhasználói szolgáltatási feladatok.

A PowerShell nyelvével két évvel ezelőtt megismertem, de csak egy évvel később szorosan elvittem, és először nem vette észre a kezdeti lehetőségeket. A cikkben először is arra fogok összpontosítani, akik el akarják kezdeni a PowerShell-szel dolgozni, de addig, amíg bízik benne, vagy nem tudja, hogyan kell megközelíteni ezt a csodát.

Figyelem: A Powershell addiktív.

Bevezetés

Wikipedia elmondja nekünk:
Windows PowerShell. - az automatizálás kiterjeszthető eszközei Microsoft.Egy parancssori interfésszel és a kapcsolódó szkriptekkel rendelkező héjból áll.

PowerShell úgy néz ki, mint egy parancssor:


powershell.exe.

Vagy alkalmazás formájában:


powershell_ise.exe.

Powershell_ise.exe. Úgynevezett integrált forgatókönyv-környezet - Windows PowerShell ise. Lehetővé teszi, hogy egy nyelvet egy kényelmes szintaxisú kiemelt környezetben, parancsépítővel, az autofill parancsokkal dolgozzon a lap és más varázsai megnyomásával. Ideális szkriptek létrehozásához és teszteléséhez.

A környezet elindításához powershell.exe. vagy powershell_ise.exe. Elég hasonló nevet tárcsázni a sorban.

A PowerShell parancsfájl kiterjesztése van .ps1.

A szkript nem lesz képes dupla lkm-t futtatni. Ezt kifejezetten annak érdekében, hogy ne sértse a rendszer véletlenszerűen futó parancsfájlt.

A PCM gombra kattintva válassza a "Futtatás a PowerShell használatával" lehetőséget:

Amellett, hogy az LKM szkriptelésének elindítására vonatkozó határérték alapértelmezés szerint a forgatókönyvek végrehajtása a rendszerben a fent leírt ok szerint meg kell tiltani - nem károsítja a rendszert. Az aktuális végrehajtási irányelvek ellenőrzéséhez végrehajtjuk a parancsot:

Get-ExecutionPolicy

Az alábbi értékek egyikét kapjuk meg. Nagyszerű valószínűséggel, ha ez volt az első indítás, kapunk Korlátozott.

  • Korlátozott - A szkriptek nem indíthatók el;
  • Allsigned. - Csak a megbízható kiadó által aláírt forgatókönyvek indíthatók el. A megbízható kiadó forgatókönyve megkezdése előtt megerősítést kap;
  • Remotesigned. - lehetővé tette, hogy a szkripteket és a letöltött forgatókönyveket a megbízható kiadó aláírta;
  • Korlátlan - Nincs korlátozás, minden szkript elindítható.

A politikák teljesítéséhez és teszteléséhez Remotesigned. Parancsolással:

Set-ExecutionPolicy Remotesigned

A munka elérése

Cmll
  • A parancsokat PowerShell parancsoknak nevezik, amelyekben különböző funkcionalitást helyeznek el;
  • A csészék lehetnek mind a rendszer, mind az egyéni, amelyet bárki hozhat létre;
  • A blasles-t a glagol-főnévre utalják, amely egyszerűsíti az emlékezetüket;
  • Coldles kimeneti eredmények objektumok vagy gyűjtemények formájában;
  • A Cmdlets mindkettő adatokat fogadhat a csővezeték (későbbi szállítószalagokról) feldolgozására és továbbítására;
  • A pohárok nem érzékenyek a nyilvántartásra (írhat és kaphatkezzen, és kaphat-e, és get-folyamatot, és get-folyamat);
  • Cmdlets után nem szükséges a " ; ", kivéve, ha több cmdletet végezünk egy sorban (Get-Process, Get-Services).

Például az aktuális folyamatok megszerzéséhez végrehajtjuk a parancsot:

És megkapjuk az eredményt:

Próbálja meg teljesíteni magát:

Get-Service # a számítógépeken futó szolgáltatások állapotának megszerzéséhez

Get-Content C: Windows \\ System32 \\ Drivers \\ stb \\ hosts #, hogy megkapja a fájl tartalmát. BAN BEN ez az eset, Fogadó fájl

Nem szükséges ismerni az összes cmdletet. Kaphat segítséget. Mentse el a helyzetet.
Az összes elérhető cmdlől elérhető információk a következő parancs megadásával érhetők el:

Get-Súgó -Kategória cmdlet

Ha a PowerShell ISE-t használjuk, megkönnyítjük a fejlesztési folyamatot.
Csak írjon be egy kötőjel-jelet " - "A Clarket bevezetése után mindent kapunk lehetséges lehetőségek Paraméterek és típusuk:

Próbálja meg végrehajtani:

Get-Service -Name P *

Ha azonban elfelejtjük, milyen tulajdonságokkal rendelkezünk egy vagy egy másik cmdle-tól, átmegyünk Kapótag.:

Get-folyamat | Get-tag # jel "|" hívott szállítószalagnak. Az alábbiakban.

Nincs elég információ? Forduljon a segítséghez a paraméterhez -Exmples.:

Get-Súgó Get-Process -exples

Leírást kapunk Get-folyamat.Igen, és példákkal:

  • A klasszák rövidített neveket tartalmazhatnak - álnevek. Például Kaphat segítséget. Egyszerűen használható Segítség.. Minden csökkentés érdekében végre Get-alias..

Próbálja meg végrehajtani:

Start-Process Notepad

Ami hasonló a felvételhez:

Indítsa el a jegyzettömböt.

És most állítsa le a folyamatot:

Stop-folyamat -name notepad

SPPS -NAME NOTEPAD.

Kissé korábban azt mondtuk, hogy a Clocles-t a glagol-főnévnek nevezik. Tisztázza, hogy az ige nem kell lennie Kap.. Amellett, amit kaphatunk, megkérdezhetjük KÉSZLET. (Ne feledje, Set-ExecutionPolicy), Indítsa el Rajt.megállítás Álljon meg., Kimenet Ki.Teremt Új és sokan mások. A Cmdlet neve nem korlátozódik semmire, és amikor saját magunkat hozunk létre, szívednek nevezhetjük.

Próbáljuk végrehajtani a fájlt:

"Hello, hub!" | OUT-FILE C: \\ TEST.TXT & C: \\ TEST.TXT

Egyébként ugyanúgy írható:

"Hello, hub!" \u003e C: teszt.txt & c: \\ test.txt

Titokzatos betűkkel és tartósan villogó kurzorral? Ez egy parancssor. A segédprogram mindenben jelen van windows verziók. Ezzel kényelmes a rendszer kezelése, a hívási programok, fájlok keresése. De a professzionális munkához a Cmd nem elég funkcionális. Ezért a Microsoft úgy döntött, hogy megjavítja az összes konzol mínusz, és kiadta a terméket a Windows név szerint PowerShell. Mi és hogyan kell használni a fejlesztést, olvassa el.

Mi a Powerhell az ablakokból

A PowerShell egy interaktív objektumorientált parancskör, amely szkriptnyelvi funkciókkal rendelkezik. A PowerShell 1.0 hivatalos kiadása 2006. november 14-én történt. A fejlesztők összekapcsolják a szokásos CLI parancssor interfészt a helyi és távoli hálózatok .NET-keretrendszerének kezeléséhez.

Ne feledje, hogy a Windows PowerShell nem egyszerű működési héj. A Microsoft sikerült létrehoznia egy erőteljes, bővíthető és egyidejűleg rugalmas vezérlõeszközt, amely kiválasztott forgatókönyvként működik.

2016. augusztus 18-án a Microsoft bejelentette, hogy a Windows PowerShell mostantól nyílt forráskódú termék minden fejlesztő számára elérhető. Továbbá a vállalat támogatta az UNIX-orientált operációs rendszereket, beleértve a Linux és az OS X eloszlásokat is.

Hogyan kezelhetők PowerShell

A cmdleteket feladatok, vagy cmdlets futtatására használják. Ezek kis parancsok, amelyeket futtatható fájlok formájában rögzítenek. A Windows XP és a Server 2008 R2 verzió 2.0 PowerShell programjában az alkotók hozzáadott modulokat, amelyek lehetővé teszik, hogy kezelje nagy mennyiség Erőforrások, beleértve az Active Directory és Exchange Server.

Most a PowerShell Automation eszközben több mint 130 modul és parancs van beágyazva. Ezek hozzáférést biztosítanak a fájlokhoz, hálózatokhoz, nyilvántartási, igazgatási és egyéb rendszerfunkciókhoz:

  • idő és dátumok beállítása;
  • munka és különálló fájlok kezelése;
  • segítségnyújtás és további információk beszerzése;
  • import és adattárolás;
  • a szkriptek létrehozására szolgáló módszerek;
  • egyéni szkriptek és alkalmazások;
  • ellenőrizze a biztonsági rendszert és a leírókkal dolgozzon;
  • rendszer adminisztráció;
  • ellenőrizze a lemezterületet.

Tekintettel arra, hogy a Windows PowerShell egy bővíthető környezetben a felhasználók létrehozhatják saját csapat, write „szerző” modulokat nyelv használatával Net.

Első lépések a Powershell-szal

2016-ban megjelent az utolsó béta 6.0 Powerhell. A Windows 7, 8 és 10 Windows rendszerben beépített. Ha másik operációs rendszert használ, az alkalmazásnak le kell töltenie. Ehhez menjen a Micropoft.com hivatalos oldalához és a Keresési ablakban, írja be a Windows PowerShell telepítését. A rendszer automatikusan lefordítja az oldalt a legújabb termékkiadásokkal. Válassza ki az operációs rendszert a listából, majd kattintson a Letöltés gombra.

Ha a fájl teljesen betöltött, nyissa meg egy dupla egérkattintással. Alapértelmezés szerint a környezet telepítve lesz a Programfiles \\ PowerShell \\ és létrehoz egy parancsikont a Start menüben. Ha boldog Windows-felhasználó vagy, kattintson a bal alsó sarokban lévő rendszer ikonra, és írja be a PowerShell programot a "Programok és fájlok keresése" gombra. Futtassa az alkalmazást, írja be az első cmdletet, és kezdjen dolgozni.

A szükséges parancsok és utasítások listája a PowerShell számára

Az egyes cmdlet nevét az "ige-főnév" vagy a "cselekvési objektum" formában ábrázolja. A legfontosabb cmdletshell-ot kínáljuk a Windows 10 és a előző verziókXP-vel kezdődően. Hasznosak lesznek még az újonc felhasználóknak is, akik most megtanulták a szöveges dokumentumok fenntartását.

  1. Kaphat segítséget. A Core Cage Cellerbe épített. A tanúsítvány hívása és biztosítja hasznos információ Szintaxis, programok, kinevezésük, más kelták. Ha az ipconfig /?, Akkor a PowerShell-ben írta, hogy tárcsázni kell a Get-Súgó Get-folyamatot.
  2. Get-tartalom. Egyszerűsíti a kezdőknek és a rendszergazdáknak a fájlok olvasására vonatkozó eljárást. Ha korábban meg kellett nyitni a fogantyút, és elolvassa a dokumentum összes sorát, most csak adja meg a Cmdlet fájlt. Ehhez írjon a C: \\\u003e Get-Content C: \\ ... \\ "fájlnév" a konzolon. "Bővítés".
  3. Get-Service. Hozzáférés a számítógépen telepített szolgáltatásokról.
  4. Kapótag. Adja meg a visszaküldött Cmdlet objektum információit, lehetővé teszi, hogy megtekinthesse tulajdonságait és módszereit.
  5. Get-parancs. A cmdletek keresése, visszaadja az összes információt róluk, beleértve az adatokat a funkciók, szkriptek, alkalmazások és egyéb elemek. A Windows 10 verziójú PowerShell programban a Get-Parancs, a verzió oszlop került hozzáadásra, és most a parancsnokok egyszerre több verziót jelenítenek meg egyszerre.
  6. Stop-indítási szolgáltatás. Elküldhetetlen asszisztens a rendszergazdák számára. A Cmdlet elindítja és leállítja a szolgáltatásokat a törölt és helyi számítógépeken.

Speciális szimbólumok szkriptekhez

A cmdlets mellett a Windows 7 és a fenti powerShell segédprogram speciális karaktereket, például $ _ vagy () tartalmaz. Az ikonok legnagyobb zavarása okozza az újonnan érkezőket, akik nem rendelkeztek a Linux-szerű rendszerekkel vagy programozással.

  1. Függőleges vonás "|". Ezt a szimbólumot a szállítószalag adatátviteli programokhoz használják. A konzolral való együttműködés során magában foglalja, ha meg szeretné adni a parancsot a függőleges funkció jobb oldalán, hogy elfogadja a bal oldali parancsot. A PowerShellben a függőleges funkciót szinte ugyanolyan céllal használják, amelyek egyszerre több csapatot ötvöznek. Például hozzon létre egy új felhasználónevet, adja hozzá egy csoporthoz, és állítsa vissza az alapértelmezett jelszót.
  2. Funkciójel "()". Lehetővé teszi, hogy hatékonyan ellenőrizze a forgatókönyvek végrehajtásának folyamatát. Hasonlóan a C-szerű programozási nyelv, a PowerShell funkció alakul megadásával több parancsmagjai zárójelek és készen áll, hogy indítsa el a szükséges számú alkalommal.
  3. Speciális szimbólum $ _. A szkript blokkok, szűrők és eljárási kifejezések írására használják. $ _ veszi az aktuális objektum értékét, és továbbítja azt a következőknek. A dollár jel használatával alacsonyabb aláhúzás nélkül kijelölhet vagy adhat meg egy változót: $ var \u003d "hello".

Mi a powershell ise

A PowerShell segédprogramhoz képest grafikus windows alkalmazás Powershell ISE. Ez egy héj, vagy integrált környezet a szkriptek írásához. Az ISE a fejlesztők számára óriási lehetőségeket kínál. Ezzel létrehozhat, hibakereményezheti és szerkesztheti a szkripteket, a szöveget és az XML fájlokat. A szintaxis színének kiemelése nagymértékben megkönnyíti a tesztelést és a kód hibáit.

Az ISE sokkal kényelmesebb, mint a PowerShell konzol, és teljesen helyettesítheti azt. A környezet használatával a nagy kódfragmentumokat másolhatja és helyezze be, ne kezdje el az összes parancsfájlt, hanem külön alkatrészeket. A PowerShelltől eltérően az ISE ablakmérete könnyen megváltoztatja az egérmutatót, mint amikor a szokásos programmal dolgozik.

Az ISE környezet kipróbálásához írja be a PowerShell ISE-t a Start menüben. Ha nem használja a Windows rendszert, hanem egy másik operációs rendszert, letölteni és telepíteni a forgalmazást a hivatalos webhelyről. Az alkalmazás elindítása után három részből álló ablak nyílik meg. A felső szkriptek az alsó - PowerShell csapatokon vannak írva, és a közepén van egy eredmény.

Indítsa el az ismerősöket az ISE-vel és az alsó ablakban, írja be a Get-folyamatot. Nyomja meg többször a fület. A cmdlet mellett megjelenik annak paraméterei, amelyek minden egyes billentyűleütés után megváltoznak. Ez lesz az első munkamenet a Microsoft parancsfájlkörnyezetével.

Ugyanígy azonban lehetővé teszi a szokásos parancssori parancsok elvégzését egy olyan környezet létrehozásához, amelyben az adminisztrátorok különböző feladatokat láthatnak el a helyi és távoli rendszereken.

Ezeket az adminisztratív feladatokat általában cmdlets (az eredetiben) végzik cmdlets.), amelyek szakosodott .NET osztályok. A felhasználó kombinálhatja őket szkriptekben (forgatókönyvek) különböző formatervezéssel, parancssori segédprogramokkal és a normál osztályokra utalva .NET, WMI vagy COM objektumok. Ezenkívül különböző adatraktárokat használhat, például a Windows fájlrendszert vagy a rendszerleíró adatbázisokat, amelyeket a PowerShell által a beszállítókon keresztül (angol. szolgáltatók).

A Windows PowerShell beágyazási mechanizmust is biztosít, amelynek köszönhetően a PowerShell végrehajtható komponensek más alkalmazásokba beépíthetők. Ezek az alkalmazások ezután a PowerShell funkciókat használhatják különböző műveletek megvalósításához, beleértve a nyújtott grafikus felület. Ezt a megközelítést alkalmazzák a Microsoft Exchange Server 2007 végrehajtani a kontroll funkciók formájában PowerShell cmdles és grafikus vezérlő közművek formájában PowerShell kagyló okozzák a szükséges parancsmagokat. Így a grafikus vezérlő felület a közbenső réteg felett van - PowerShell. Mások microsoft alkalmazások, Például a Microsoft SQL Server 2008, System Center Operations Manager és a System Center Data Protection Manager is hozzáférést biztosít a menedzsment interfészek a PowerShell. A jövőben az összes Microsoft Server alkalmazás be van kapcsolva windows platform a Powerhell-ot egy vagy más módon használja.

A Windows PowerShell magában foglalja saját nyújtható segítségét, elérhető (beleértve a parancssorból) a Get-Súgó Cmdlet segítségével.

Előre.

Klasztú

Forgatókönyvek

A PowerShell dinamikus típusú forgatókönyvet tartalmaz, amelyen komplex műveleteket hajthat végre cmdlets alkalmazásával. A script nyelv támogatja a változókat, funkciókat, fiókterveket (ha-másat) ciklusokat (míg, az és a foreach), strukturált hibafeldolgozás és sok más funkció, beleértve a C.NET integrációját is. A Powerhellben lévő változókat $ előtag jelöli a név előtt; Bármilyen jelentést lehet rendelni, beleértve a cmdletek visszavonását is. Bár maga a nyelv önmagában nem szigorúan beírva van, a változók belsejében mentésre kerülnek az alapvető típusok (Eng. primitív típusok.) vagy tárgyak. A sorok egyetlen idézőjelben vagy kettős idézőjelben vannak bezárva: kettős idézőjelek használata esetén a karakterláncban található változók értékeikkel helyettesítik. A változók szintaxisával összhangban, ha a fájl elérési útja a göndör zárójelben van elhelyezve egy előző dollár jelzéssel (azaz $ (c: \\ foo.txt)), akkor ez lesz egy link a tartalomhoz a fájl. Mindazt, amit egy ilyen változóhoz rendelnek, rögzítik a fájlban, és éppen ellenkezőleg, a fájl tartalmát a tartalmának elérésekor adják ki.

Az objektum tulajdonságait és módszereit a pont (.), Mint a szintaxisban. A PowerShell speciális változókat kínál, például $ Args, amely tartalmazza az összes névtelen parancssori argumentumot, továbbított funkciókat vagy $ _-t, amely a szállítószalag és más struktúrák aktuális objektumára hivatkozik. A Powerhell tömböket és asszociatív tömböket is tartalmaz. Ezenkívül a Powerhell automatikusan kiszámítja a parancssorba bevitt aritmetikai kifejezéseket, és megérti a népszerű fázist, például GB (GB), MB (MB) és KB (CB).

A PowerShellben létrehozhatja saját funkcióit, amelyek elfogadják a paramétereket a funkció függvényével. A népszerű probléma sok kezdő, hogy a funkciók fogadja érvek elválasztva nem vesszőt, de terek (mint parancssori segédprogramok vagy parancsmagjai):

  1. : Két argumentummal rendelkező funkciót okoz.

Ezek az érvek köthetők a funkció nyilatkozatában megadott paraméterekhez. Továbbá, akár $ args-ről is kapcsolatba léphetnek velük.

  1. (, ): Az egyik argumentummal rendelkező funkciót okozza, amely két elem tömbje.

PowerShell segítségével hívja bármilyen .NET módszerek megkötésével a hely nevét szögletes zárójelek (), majd egy pár színben (: :) jelzi a statikus módszer. Például :: Writeline ("PowerShell"). Az objektumok az új objektum Cmdlet használatával hozhatók létre, új tulajdonságokat adnak hozzá a kiegészítő cmdlet használatával.

A PowerShell hiba kezelése az on-line alapú mechanizmust biztosítja. Hiba esetén az objektumok hibás információt (kivétel objektumot) adnak ki, amely elfogott kulcsszó Csapda. Azonban a viselkedés, ha hibák vannak konfigurálva. Tehát konfigurálhatja a PowerShell-ot úgy, hogy hiba esetén csendben továbbra is végrehajthasson a hiba elfogása nélkül. A PowerShell második verziója is hozzáadta a Próbálkozó fogást.

A PowerShellben írt forgatókönyvek megmenthetők a Files.ps1 munkamenetek között. Ezután használhatja az egész szkriptet vagy az egyéni funkciókat. Scriptek és funkciókat használnak, mint cmdtam, azaz ők is parancsot a szállítószalag, hogy képes továbbítani paramétereket. Az objektumok továbbíthatók a szállítószalag forgatókönyvei, funkciói és cmdletek között. Azonban a PowerShell parancsfájlok végrehajtása alapértelmezés szerint tilos, és engedélyezni kell a Set-ExecutionPolicy Cmdlet használatával. A PowerShell parancsfájlokat digitális aláírással lehet aláírni az integritásuk ellenőrzéséhez.

PowerShell 2.0

A Microsoft kiadta a PowerShell 2.0-t a Windows 7 és a Windows Server 2008 R2 részeként. A Windows PowerShell 2.0 beállítja ezeket a rendszereket. Kivétel az üzemmód windows berendezések Server 2008 R2 alap üzemmódban, ahol a PowerShell 2.0 manuálisan konfigurálható. Az idősebb platformok esetében a Windows menedzsment keret részeként elérhető. A PowerShell 2.0 módosítja a szkriptnyelv és az API-t a beágyazáshoz, az új 240 cmd.

A PowerShell 2.0-ban tartalmazott új funkciók hiányos listája:

  • PowerShell távoli. A WS-menedzsment használatával a PowerShell 2.0 lehetővé teszi a távoli gépeken (többek között többször is) parancsfájlokat és cmdleteket, figyelemmel kíséri a végrehajtásuk állapotát, és objektumok formájában (serialization - deterialization) eredményez. Lehetőség van az interaktív munkamenetek és munkamenetek korlátozott funkcionalitással.
  • Háttérmunka. Képes hívni a parancssorok sorrendjét aszinkron módon. A munkák helyi gépen vagy több távoli gépen futhatnak. A munkák nem használhat interaktív cmdleteket.
  • Tranzakciók. Engedélyezze a cmdletek és beszállítók fejlesztői tranzakciós műveletek végrehajtását. A PowerShell 2.0 tartalmazza a tranzakciók inicializálására, megerősítésére és visszaigazolására szolgáló cmdleteket, valamint a tranzakciók kezelését és a CMDT-ben és a beszállítók használatát.
  • Speciális funkciók. A teljes körű cmdletek kifejlesztésének képessége csak a PowerShell használatával.
  • StepplePipelines. Lehetővé teszi a felhasználónak a cmdlet hívásakor a kezdetkezelő (), a ProcessRecord () és az EndProcessing () funkciókat.
  • Modulok. Hagyja, hogy a forgatókönyvek és a rendszergazdák szerzők szervezzék a PowerShell parancsfájlokat, és helyezze őket önellátó modulokba. A modulból származó kód saját, független kontextusban történik, és nem befolyásolja a környezetet a modulon kívül. A parancsfájl használatával a modulok korlátozott környezetet mondhatnak. A modulok tartalmazhatnak nyilvános és magánfunkciókat és változókat.
  • Adatnyelv. A PowerShell nyelv egy részhalmaza, amely lehetővé teszi az adatok definícióinak elkülönítését a végrehajtható forgatókönyvek kódjából, és lehetővé teszi a lokalizált karakterláncok behozatalát a végrehajtás során.
  • Hibakeresési parancsfájlok. A megszakítási pontok telepítésének képessége (ENG. töréspontok.) A PowerShell parancsfájlokban vagy funkciókban. A megszakítási pontok a húrok, oszlopok, parancsok, vagy olvasási műveletek és / vagy rögzítési változókra telepíthetők. Vannak cmdlets a forgatókönyvek megszakítási pontjai telepítéséhez és ellenőrzéséhez.
  • Esemény. Ez a funkció lehetővé teszi, hogy hallgassa, átirányítja és elvégezze a műveleteket, amikor a menedzsment vagy rendszeresemények bekövetkeznek. Az eseménynek köszönhetően a PowerShell fogadó értesíthető a kezelt objektumok állapotának változásairól. Lehetővé teszi a forgatókönyvek számára is, hogy feliratkozzanak az objektumokra, a pseventsekre és a wmiicidsre, és szinkron módon és aszinkron módon feldolgozzák őket.
  • Windows PowerShell Integrált Scripting Environment (ISE). A PowerShell 2.0 grafikus héjat tartalmaz egy olyan nyelvhez, amelyben a beépített hibakereső szerepel, a szintaxis háttérvilágítás, a parancsok automatizálása. A héj lehetővé teszi, hogy több független powerhell konzolot futtathasson, teljes körűen az Unicode támogatásával a könyvjelzőkkel. A távoli végrehajtás támogatásának köszönhetően néhány konzol más számítógépeken is elvégezhető. Ezenkívül az ISE lehetővé teszi, hogy elvégezze a forgatókönyvek kiosztott részét, tartalmaz egy beépített szerkesztőt, és lehetővé teszi, hogy bővítse és kiegészítse az interfészt a PowerShell segítségével.
  • BITS TRANSFER - beépített támogatást a fájlok hálózaton keresztül a rangsorolási többszálas, újrakezdése és aszinkron alapuló munka a Háttérben futó intelligens átviteli szolgáltatás technológia.
  • Számos új cmdlet, beleértve például a kimeneti gridview-t is, amely lehetővé teszi a szállítószalag eredményeit grafikus táblázatban (WPF alapján), válogatási és azonnali keresési képességekkel.
  • Új üzemeltetők -Split, -Join és helyettesítési operátor (@).
  • A hibák feldolgozása a kipróbálással. Más .NET nyelvektől eltérően, a PowerShellben többféle kivételt is megadhat egy fogási blokk esetében.
  • Blokkolja a megjegyzéseket. A PowerShell 2.0 támogatja a blokk megjegyzéseit (plusz a már meglévő vonalszámot) használatával<# и #> korlátozásokként.
  • Az új API-k különböző képességeket adtak hozzá, a PowerShell Parser nagyobb irányításától a korlátozott munkamenetek létrehozásának képességéig (angol. korlátozott runspace.), Amelyben csak korlátozott utasításokat és PowerShell parancsokat hajthat végre.

A hasonló csapatokkal rendelkező cmdletek összehasonlítása

Az alábbi táblázat tartalmazza a PowerShell készülékhez mellékelt cmdletek mintáját, a többi széles körben ismert parancssori héjak maximális hasonló parancsával.

Meg kell jegyezni, hogy ezt a táblázatot felszínes megismerésnek adják, nem terjed ki a képviselt kagylók összes jellemzőjére.

Windows PowerShell
(Cmdlet)
Windows PowerShell
(Álnév)
cmd.exe / command.com.
(MS-DOS, Windows, OS / 2, stb.)
Bash
(Unix, BSD, Linux, Mac OS X stb.)
Leírás
Helymeghatározás gL, PWD. pwd. Megjeleníti az aktuális munkakönyvtárat
Helymeghatározás sL, CD, CHDIR , Chdir Megváltoztatja az aktuális katalógust
Clear-host. cls, tiszta cLS. egyértelmű Törli a képernyőt
Másolási tétel. cPI, másolás, cp másolat. Egy vagy több fájlt vagy könyvtárat másol (a PowerShellben más adatszolgáltatók objektumait is másolhat)
Kaphat segítséget. segítség, ember. segítség. férfi. Segítség a csapatok
Elem eltávolítása. ri, del, törlés, rmdir, rd, rm del, törlés, rmdir, , rmdir Törli a fájlt / könyvtárat (vagy más elemet a PowerShell adatszolgáltatókban).
Átnevezés elem. rNI, REN. ren, átnevezve. Fájl / könyvtár átnevezése
Áthelyezés. mi, Mozgás, MV mozog. A fájl / könyvtárat egy új helyre mozgatja
Get-Childem. gci, dir, ls dir. Megjeleníti az összes fájlt / könyvtárat az aktuális könyvtárban
Írási kimenet echo, írj. visszhang. visszhang. Megjeleníti a karakterláncokat, a szabványos kimeneti változókat
Pop-hely popd. popd. popd. Megváltoztatja az aktuális könyvtárat az utoljára, amelyet a veremre helyezték
Nyomógomb pushd. pushd. pushd. Helyezi az aktuális könyvtárat a veremre
Állítsa be változó. sv, állítsa be. kÉSZLET. kÉSZLET. A változó változó / létrehozásának értékének beállítása
Tartalom gC, típus, macska típus macska. Megkapja a fájl tartalmát
Válassza ki a karakterláncot. keresse meg, találni. grep. Megjeleníti az állapot alatt álló karakterláncokat
Get-folyamat. gPS, PS. tlist, tasklist. Megjeleníti az összes futási folyamatot
Stop-folyamat. spps, ölni Ölj meg, taskkill. megöl Megállítja a futó folyamatot
Tárgy. póló. n / A. póló. Adja meg a bemeneti adatokat egy fájlba vagy változóhoz, majd továbbítja őket a szállítószalaggal

Lásd még

  • Powershell ISE.

Jegyzetek

Irodalom

  • Popov a.v. Bevezetés a Windows PowerShellbe. - Szentpétervár. : BHV-PETERSBURG, 2009. - P. 464. - ISBN 978-5-9775-0283-2

Linkek

  • Windows PowerShell 1.0 telepítési csomag letöltési központ a Windows Vista számára
  • Jelentés a PowerShell lehetőségekről és a szkript írásbeli alapjairól
  • Windows menedzsment keret (beleértve a PowerShell 2.0, WinRM 2.0 és bits 4.0) Windows XP rendszert, Windows Server 2003, Windows Vista, Windows Server 2008
  • Blog "Powershell és más szkriptek" (Rus.)
  • (Rus.)
  • "PowerShell blog és nem csak" (Rus.)
  • Ingyenes orosz könyv o PowerShell (Rus.)
  • Második ingyenes angol könyv a PowerShell-ról (angol)
  • Windows PowerShell webcsomag (angol)
  • PowerShell kapitánya és adminisztrációja a jövőben (Rus.)

A Windows PowerShell a rendszer rendszerének egyik fontos eszköze windows rendszergazda. A PowerShell egy erőteljes eszköz, amelyet nem szabad elhanyagolni. Ez a cikk célja, hogy alapvető munkaeszközöket biztosítson a Windows PowerShell segítségével.

A PowerShell valami több, mint egy parancssori héj. A PowerShell első verziója 2006-ban jelent meg, a fejlődés oka volt a klasszikus csapat primitiválisak windows húroknem engedélyezett komplex algoritmusokat.

A Windows PowerShell Windows 7, 8, 8.1 és Windows Server 2008 R2, 2012 R2 rendszereiben van beállítva, és hozzáadható a Windows XP SP3, a Vista és a Windows Server 2003 SP2 rendszerhez. A PowerShell interfész hasonlít egy jól ismert parancssori felületre.


Windows interfész Powershell

Mint már említettük, a parancssori felület nem korlátozott. A PowerShell biztosítja a rendszergazda saját forgatókönyveinek nyelvét, amely lehetővé teszi a komplex műveletek automatizálását.

A PowerShellben futó parancsok cmdletek, funkciók, szkriptek és külső végrehajtható fájlok formájában lehetnek.

Klasztú - Ez egy új típusú parancs, amely a PowerShellbe épült. Az ilyen típusú parancsok a DLL-könyvtárakban vannak összeállítva, és az indítás során betöltődik a PowerShell folyamatba. Maguk számára a cmdlets alkalmazások nem indulnak el.

Cmdlets nevek megfelelnek a sablonnak "Ige főnév". Az ige leírja azt a műveletet, amelyet szeretnénk készíteni, és a főnevet - a műveletet elvégzendő tárgyat. Például a konzol képernyő törléséhez be kell írnia a Clear-Host parancsot. Megtekintheti az elérhető parancsokat a Get-parancs konzol megadásával.

A csészéknek paraméterei lehetnek. Általában úgy néz ki, mint ez:

comandline név -parameter1 -parameter2 argument1 argument2

Az argumentumok nem nevek paraméterek.

Hogyan működik? Például van egy dir parancsunk, amely megjeleníti a könyvtár tartalmát.

A DIR csapat munkája példája

Tegyük fel, hogy elvesztettem egy adott fájlt. Hagyja, hogy a Photoshop tanúsítványfájl legyen. Pontosan emlékszem, hogy a fájlnév "Photoshop" -t tartalmaz, és ez egy PDF fájl. Mint emlékszem, a fájl ebben a könyvtárban található. Megmutathatom az összes könyvtári fájl listáját, mint a fenti példában, és manuálisan kereshetem a fájlt. És alkalmazhatom a -filter paramétert, amely csak azokat a fájlokat jeleníti meg, amelyek megfelelnek egy adott érvnek. Argumentumként * Photoshop * .pdf. Asterisks a "Photoshop" szó körül áll, mert nem emlékszem a pontos fájlnévre, és a PowerShell mutatója, hogy a "Photoshop" előtt és után állhat bármilyen karaktert. Azt is mutatom, hogy keresse meg a PDF fájlt.

Tehát a keresési fájl megtalálható. A cmdletek általános formájában kijelölték, hogy egy cmdlet több paramétert tartalmazhat. Ezenkívül a paraméterek nem mindig vannak argumentumok.

Egy kicsit bonyolítja példánkat. Mondjuk most, hogy meg kell találnom Christopher Dugurty könyvet. Csapat dir -filter * dougherty * .pdf Nem csináltam semmit. Ez azt jelenti, hogy ebben a katalógusban nincsenek könyvek, de pontosan emlékszem, hogy valahol itt van, nyilvánvalóan az alkönyvtárakban. A kereséshez és az alkönyvtárak kereséséhez adja hozzá a -Recurse paramétert.

A keresés egy kicsit hosszabb lesz, de a kívánt könyv megtalálható.

Amint látható, a -Recurse paraméter nem tartalmaz érvet. Önmagukban, a paramétereket tud állni bármilyen sorrendben, a lényeg az, hogy teljes mértékben tartsa be a logika, ha a kötelező argumentum következik a paramétert, amelyre azt szánták. Tehát a csapat dir -filter * dougherty * .pdf -recurse ugyanúgy fog működni, mint dir-recurse -filter * Dougherty * .pdf.

A paraméterek nevei a rövidített formában írhatók, ami nagyon kényelmes a mindennapi munkához a parancssorral. A csökkentésnek világosnak kell lennie az interpreternek, azaz Ne engedje meg a kettős értelmezést. Például a -Recurse paraméter csökkenthető az egyszerű -R-re, és a csökkentés -filter -F hibát okozhat, mert Még mindig van egy -force paraméter. Ebben az esetben vághatsz -FI-t -FI-re.

Tehát kaptunk egy ötletet a keltákról. Következő .

Miután áthelyezte a Windows operációs rendszert 10, sok felhasználó észlelte a "Run PowerShell" gombot a vezető felületen. Ebben a tekintetben sok kérdés jelent meg a hálózaton, a Windows Powerhell programban érdekelt felhasználók és mi szükséges. Ha érdekli ezt a kérdést, akkor ez az anyagnak segítenie kell.

A Windows PowerShell egy szkriptnyelv és egy program, amelynek parancssori felülete van, hogy elvégezze ezeket a parancsfájlokat. Ezt a nyelvet 2006-ban szabadították fel a Windows XP második szervizcsomagjának részeként, és azóta a PowerShell része az összes Microsoft operációs rendszernek. 2008-ban megjelent a második verzió ebből a nyelvbőlÉs a Windows 7 rendszerrel kezdődik. A Windows PowerShell parancsfájlok a PS1 kiterjesztéssel rendelkeznek, és BAT és CMD fájlként ismertethetők.

A Windows PowerShell egy szkriptnyelv, amelyet elsősorban a Microsoft üzleti ügyfelek számára fejlesztettek ki, akik hatékony eszközöket igényelnek a kiszolgálókezelési feladatok és számítógépek automatizálásához windows adatbázis. E nyelv alapját a platform.net használta, amelyet a Microsoft 2002 óta fejlesztett ki.

A Windows PowerShell lehetővé teszi, hogy sokféle feladatot automatizáljon. Ezzel kezelheti a fájlokat, szolgáltatásokat, feldolgozásokat, fiókokat és beállításokat. A PowerShell nyelv sok csapatot ért el a hétköznapi Parancs sor Windows (CMD), de saját nyelvén is rendelkezik saját parancsával, amelyeket itt neveznek.

A csészéket (angol cmdlets) a glagol-főnév, például a Get-Súgó alkotja. Megismerheti magát a Windows PowerShell alapjaival a Súgó segítségével (Get-súgó cmdlet). Általános információk beszerzéséhez egyszerűen írja be a "Get-Súgó" parancsot, írja be a "Get-Súgó-név-cmdlet" parancsot, hogy megkapja az adott cmdletet. Például, ha megadja a "Get-Súgó Get-Process" parancsot, akkor kapunk egy Get-Process cmot súgót.

A Windows PowerShell program futtatása

A Windows PowerShell program elindítható különböző utak. A legegyszerűbb lehetőség az, hogy egyszerűen használja a keresést a Start menüben. Ehhez nyissa meg a Start menüt, írja be keresési lekérdezés A "Windows PowerShell", amely után megnyitja a talált programot.

Használhat kombinációt is windows-r gombok És írja be a "PowerShell" parancsot.

A Windows 10 rendszerben a PowerShell program bármely mappából futtatható. Ehhez kattintson a "Fájl" gombra a karmester bal felső sarkában, és válassza a "Windows PowerShell" parancsot.

A Windows PowerShell használata

Amint azt mondtuk, a PowerShell program segítségével sok rutin feladat automatizálható operációs rendszer Ablakok. Például bemutatjuk néhány olyan funkciót, amelyet ez az eszköz rendelkezik, hogy világossá váljon, hogyan kell használni.

Tisztító kosár. Van egy speciális cmdlet a kosár tisztításához, amelyet "Clear-RecycleBin "nek neveznek. Ez a cmdlet használható a szkriptek írásakor a számítógépek karbantartása érdekében. A cmdlet végrehajtásakor meg kell adnia azt a lemezt, amelyen törölni szeretné a kosarat. Példa:

Clear-Recyclebin C:

Az alábbi képernyőképen látható, hogy ez a cmdlet végrehajtása. Miután megadta a "Clear-RecycleBin C:" parancsot, megjelenik egy megerősítő kérés. A cmdlet végrehajtásának folytatásához be kell írnia az "Y" betűt, és nyomja meg az Enter billentyűt.

Ha hozzáadja a "-Force" -t a cmdlet "Clear-Recyclebin C:", akkor a kosár tisztítása megerősítő kérés nélkül történik. Képernyőkép az alján.

Fájlarchiválás. Archiválási és kicsomagolás fájlokat, COMPRESS archiválási és bontsa-Archive parancsmagokat biztosított. Például a "C: \\ Test \\" mappa archiválása az Archívum "C: \\ Archive \\ Test2.zip" értékre, a következő cmdletet kell végrehajtania:

Compress-Archive -literalPath C: \\ teszt \\ -DestinationPath C: \\ Archive \\ Test2.zip

Ennek eredményeként az a parancs végrehajtását fent látható, a „Test2.zip” fájl megjelenik a „C: \\ Archive \\” mappát, amelyben a tartalmát a C: \\ teszt \\ mappa.

A Windows PowerShell cmdlets listája

A Windows PowerShell számára óriási számú különböző cmdlet, és leírja őket egy cikkben, nem fog működni. Ezért javasoljuk, hogy megismerjék magad a legkeresettebb után:

  • Get-Súgó - Referenciák fogadása;
  • Update-Súgó - Frissítés;
  • Get-Command - Keressen cmdleteket;
  • Get-alias - Keressen pszeudonimokat cmdletekhez;
  • Get-PSDRIVE - Connected lemezek megtekintése;
  • Get-tag - az objektummal rendelkező tulajdonságok és módszerek megtekintése;
  • Get-windowsfeature - Információk megtekintése elérhető szerepek és kiszolgálóelemek;
  • Telepítés-WindowsFeature (analóg add-windowsfeature) - Beállítja a szerepeket vagy alkatrészeket a kívánt kiszolgálóhoz;
  • Uninstall-windowsfeature (Analóg eltávolítás-windowsfeature) - eltávolítja a szerep vagy szerver összetevőjét;
  • Get-History - Nézze meg az ebben a munkamenetben bevezetett csapatok történetét;
  • Get-változó - A változók listájának megtekintése és értékeik;
  • Új változó - új változó létrehozása;
  • SET-változó - a változó értékének beállítása;
  • Világos változó - változó érték eltávolítása;
  • Távolítsa el a változót - a változó és értékeinek eltávolítása;
  • Formátum-lista - Nézze meg a parancs eredményét a tulajdonságok listájaként, ahol minden egyes sorban különálló tulajdonság;
  • Formátum-asztal - Tekintse meg a parancs eredményét az asztali formátumban;
  • Formátum-széles - Tekintse meg a parancs eredményét széles táblázat formájában, amelyben csak egy tulajdonság jelenik meg minden objektum esetében;
  • Formátum-egyéni - A parancs eredményének megtekintése a felhasználói nézet használatával;
  • Export-CSV - Data Export CSV formátumba;
  • Import-CSV - Adatok importálása CSV-fájlból;
  • Export-CLIXML - Adatok exportálása XML formátumba;

A Get-Command-CompandType Cmdlet cmdlet futtatásával teljes körű listát kaphat.