PowerShell cmdlets. Što je Windows PowerShell i šta je potrebno za ono što

5. novembra 2014. u 20:07

Jump Start u PowerShell (Dio I)

  • Administracija sistema,
  • PowerShell.
  • Udžbenik

Samo automatizacija. Samo PowerShell.

Predgovor

Kao hobi i u prisustvu vremena predajem studente da ukitnu (bivši Moskovski državni fakultet informacione tehnologije). Na ovaj trenutak Imam malo vremena da mu dam grupu studenata, ali dovoljno je pripremiti post ovdje na Harbru.

Radim kao administrator sistema u velikom društvu IT-a s velikim niz za IT resurse. Prirodom aktivnosti čini se da odlučuje veliki broj Zadaci korisnika usluga.

S PowerShell jezikom, upoznao sam se prije otprilike dvije godine, ali ga su ga uskoro odveli samo godinu dana kasnije, ne realizirajući početne mogućnosti u početku. U članku ću se prvo fokusirati na one koji žele početi sa radom sa PowerShell-om, ali dok mu ne veruje ili ne zna kako pristupiti ovom čudu.

Pažnja: PowerShell je ovisni.

Uvođenje

Wikipedia nam govori:
Windows PowerShell - proširiva sredstva za automatizaciju iz Microsoft.Koji se sastoji od školjke sa sučeljem naredbenog retka i povezanim skriptima.

PowerShell izgleda kao naredbena linija:


powerShell.exe.

Ili u obliku aplikacije:


powerShell_ise.exe.

PowerShell_ise.exe. Nazvan integrirani scenarijsko okruženje - Windows PowerShell Ise. Omogućuje vam da radite sa jezikom u pogodnom sintaksu označenom okruženju, naredbeni konstruktor, naredbe za automatsko opreme pritiskom na karticu i drugim čarima. Idealno za kreiranje i testiranje skripti.

Za pokretanje okruženja powerShell.exe. ili powerShell_ise.exe. Dovoljno je birati slično ime u nizu.

PowerShell Script datoteka ima produžetak .ps1.

Skripta neće moći pokrenuti dvostruki LKM. To se vrši posebno kako ne bi naštetilo sistem nasumično pokrenutim skriptu.

Da biste započeli, klikom na PCM, odaberite "Pokreni pomoću PowerShell":

Pored činjenice da postoji ograničenje na lansiranju skripta LKM-a, izvršenje scenarija u sustavu ponovo je zabranjeno, u skladu s gore opisanim razlogom - ne šteti sistemu. Da bismo potvrdili trenutnu politiku izvršenja, izvršit ćemo naredbu:

Dobiti-izvelicuPolicy

Dobijamo jednu od sljedećih vrijednosti. Uz veliku vjerojatnost ako je to bilo prvo lansiranje, dobivamo Ograničen.

  • Ograničen - skripte se ne mogu pokrenuti;
  • Asisigned. - Mogu se pokrenuti samo scenariji koje potpisuje pouzdan izdavač. Prije obavljanja scenarija pouzdanog izdavača bit će zatraženo potvrđivanje;
  • Remotesigned. - dozvoljeno je izvesti skripte i preuzeti scenarije koje potpisuje pouzdan izdavač;
  • Neograničen - Nema ograničenja, mogu se pokrenuti sve skripte.

Da ispuni i testiraju politike na Remotesigned. Naredbom:

Set-ekshuijomPolicy Remotesigned

Dolazak na posao

Cmll
  • Naredbe se nazivaju naredbe PowerShell, u kojima se postavlja različita funkcionalnost;
  • Šalice mogu biti i sustav i običaj koji je stvorio bilo tko;
  • Bogovi se nazivaju pravilom glagol-imenica, što pojednostavljuje njihovu memorizaciju;
  • Coldclas izlazni rezultira u obliku objekata ili njihovim zbirkama;
  • Cmdlets mogu oboje primati podatke za obradu i prenošenje podataka na cjevovodu (o transporterima kasnije);
  • Šalice nisu osjetljive na registar (možete pisati i dobiti proces i get-proces i get proces);
  • Nakon cmdleta, nije potrebno staviti " ; ", osim kada izvršimo nekoliko cmdleta u jednom retku (get-proces; get-usluge).

Na primjer, da biste dobili trenutne procese, izvršit ćemo naredbu:

I dobivamo rezultat:

Pokušajte se izvesti:

Get-Service # za postizanje statusa usluga koje rade na računaru

Get-Content C: \\ Windows \\ System32 \\ Drivers \\ etc \\ hosts # da biste dobili sadržaj datoteke. U ovaj slučaj, Domaća datoteka

Nije potrebno znati sve cmdlete. Pomoć. Spremite situaciju.
Informacije o svim dostupnim cmdlesom mogu se dobiti unosom sljedeće naredbe:

Get-Help -Category cmdlet

Ako koristimo PowerShell Ise, olakšamo razvojni proces.
Samo unesite znak crtice " - "Nakon što je Clarket uveden, a mi ćemo dobiti sve moguće opcije Parametri i njihove vrste:

Pokušajte izvršiti:

Get-Service -Name p *

Ako, ipak, zaboravit ćemo čija imanja postoji jedan ili neki drugi cmdle, vozimo se kroz Get-član.:

Get-Proces | Get-član # znak "|" Zove se transporter. O njemu ispod.

Nema dovoljno informacija? Okrenite se uz pomoć u parametri -Samples.:

Pozovite - Pomoć Get-Proces -ECamples

Dobijamo opis Get-Proces.Da, i sa primjerima upotrebe:

  • Paklenici mogu imati skraćena imena - aliases. Na primjer, umjesto toga Pomoć. Možete koristiti jednostavno Pomoć.. Za sva smanjenja, izvedite Get-alias..

Pokušajte izvršiti:

Notepad pokretanja procesa

Što je slično snimanju:

Start notepad.

I sada zaustavite postupak:

Stop-Proces -Name notepad

SPPS -Name notepad.

Lagano ranije rekli smo da se klokli nazivaju vladavim vladama Glagol-imenica. Pojasniti da glagol ne mora biti Dođite.. Pored onoga što možemo dobiti, možemo pitati Set. (Zapamtite, postavljenu izveštavanjePolitika), lansirajte Početak.zaustavljanje Stani., izlaz Napolje.Stvoriti Novo I mnogi drugi. Naziv cmdleta nije ograničen na bilo šta i kada ćemo stvoriti vlastiti s vama, možemo ga nazvati kao svoje srce.

Pokušajmo izvršiti datoteku:

"Zdravo, Hub!" | Out-File C: \\ test.txt & c: \\ test.txt

Uzgred, može se napisati na isti način kao:

"Zdravo, Hub!" \u003e C: \\ test.txt & c: \\ test.txt

Sa misterioznim slovima i uporno treperi kursor? Ovo je naredbena linija. Uslužni program je prisutan u svemu windows verzije. S njom je prikladno upravljati sistemom, programima poziva, pronaći datoteke. Ali za profesionalni rad CMD nije dovoljno funkcionalan. Stoga je Microsoft odlučio popraviti sve minuse konzole i osloboditi proizvod pod po imenu Windows PowerShell. Šta je to i kako koristiti razvoj, čitanje.

Što je PowerShell iz prozora

PowerShell je interaktivno objektno orijentirano komandno okruženje sa funkcijama skripte jezika. Službeno izdanje PowerShell 1.0 iz Microsofta održano je 14. novembra 2006. Programeri su kombinirali sučelje uobičajene CLI naredbene linije sa platformom za upravljanje lokalnim i udaljenim mrežama .NET okvira.

Imajte na umu da Windows PowerShell nije jednostavna operativna školjka. Microsoft je uspio stvoriti moćan, proširiv i istovremeno fleksibilan alat za kontrolu, koji je sposoban funkcionirati kao odabrani scenarijski jezik.

Microsoft je 18. avgusta 2016. objavio da je Windows PowerShell sada otvoreni izvor proizvod dostupan svakom programeru. Također, kompanija je dodala podršku za operativne sisteme orijentirane na Unix, uključujući Linux i OS X distribucije.

Kako upravljati PowerShell

Cmdlete se koriste za pokretanje zadataka ili cmdleta. Ovo su male naredbe zabilježene u obliku izvršnih datoteka. U verziji 2.0 PowerShell za Windows XP i server 2008 R2, Stvori su dodali module koji vam omogućavaju da upravljate velika količina Resursi, uključujući Active Directory i Exchange Server.

Sada u alatu za automatizaciju PowerShell ugrađene su preko 130 modula i naredbi. Omogućuju pristup datotekama, mrežama, registru, administraciji i drugim značajkama sistema:

  • podešavanje vremena i datuma;
  • rad sa mapama i odvojenim datotekama;
  • dobivanje pomoći i dodatnih informacija;
  • skladište uvoza i podataka;
  • metode za kreiranje skripti;
  • pojedinačne skripte i aplikacije;
  • provjerite sigurnosni sistem i radite s deskriptorima;
  • administracija sistema;
  • provjerite prostor na disku.

S obzirom na to da je Windows PowerShell proširivo okruženje, korisnici mogu kreirati vlastite timove, pisati "autor" module koristeći jezik .NET .NET .NET .NET .NET.

Prvi koraci s PowerShell-om

U 2016. godini objavljena je zadnja beta verzija 6,0 PowerShell. U sustavu Windows 7, 8 i 10, korisnost je ugrađena. Ako koristite drugi operativni sistem, aplikacija će morati preuzeti. Da biste to učinili, idite na službenu stranicu MicroFoft.com i u prozoru za pretraživanje unesite instaliranje Windows PowerShell. Sistem će se automatski prevesti na stranicu sa najnovijim izdanjima proizvoda. Odaberite svoj OS sa liste i kliknite Preuzimanje.

Kad se datoteka potpuno učita, otvorite je s dvostrukim klikom miša. Po defaultu će se okruženje instalirati u programima \\ PowerShell \\ i stvoriti prečicu u meniju Start. Ako ste sretni Windows korisnik, kliknite na ikonu sustava u donjem lijevom uglu i unesite PowerShell da biste "pronašli programe i datoteke". Pokrenite aplikaciju, unesite svoj prvi cmdlet i počnite raditi.

Spisak potrebnih naredbi i uputstava za PowerShell

Naziv svakog cmdleta predstavljen je u obliku "Imenica" ili "Action-objekt". Nudimo listu najvažnijih Cmdlets PowerShell za Windows 10 i prethodne verzijePočevši od XP-a. Bit će korisni čak i novim osobama koji su tek saznali kako održavati tekstualne dokumente.

  1. Pomoć. Izgrađen u CORE CAGE CELER. Dizajniran za nazivanje certifikata i pruža korisne informacije O sintaksi, programima, njihovim imenovanjem, drugim Keltima. Ako ste u uobičajenom nadmetničkom prevoditelju napisao IpConfig /?, A zatim u PowerShellu morate birati get-hel-helge-helge proces.
  2. Prihvataj sadržaj. Pojednostavljuje postupak čitanja datoteka za početnike i sistemske administratore. Ako je ranije bilo potrebno otvoriti ručku i pročitati sve retke dokumenta, sada samo dajte datoteku cmdlet. Da biste to učinili, napišite u C: \\\u003e Get-Coontent C: \\ ... \\ "Naziv datoteke" u konzoli. "Proširenje".
  3. Dobivanje usluge. Pristup informacijama o uslugama instaliranim na računaru.
  4. Get-član. Daje informacije o vraćenom CMDLET objektu, omogućava vam da vidite njegove svojstva i metode.
  5. Get-naredba. Pretraživanje CMDLET-a, vraća sve informacije o njima, uključujući podatke o funkcijama, skriptima, aplikacijama i drugim elementima. U verziji 5.0 PowerShell za Windows 10 u Get-naredbu, stupac verzija je dodata, a sada zapovjednici prikazuju nekoliko verzija istog modula odjednom.
  6. STOP- \\ POČETNA USLUGA. Nezamjenjiv asistent za administratore. CMDLET lansira i zaustavlja usluge na izbrisanom i lokalnom računaru.

Posebni simboli za skripte

Pored cmdleta, PowerShell uslužni program u sustavu Windows 7 i iznad uključuje posebne znakove, kao što su $ _ ili (). Najveća zbunjenost ikona uzrokuje pridošlice koji nisu imali slučaj sa Linux-u sistemima ili programiranju.

  1. Vertikalna osobina "|". Ovaj se simbol koristi za programe sa prijenosom transportera. Kada radite sa konzolom, on uključuje kada žele odrediti naredbu udesno na vertikalno značajku da prihvati izlaz iz lijeve naredbe. U Powersellu, vertikalna značajka koristi gotovo iste svrhe, kombinirajući nekoliko timova odjednom. Na primjer, napravite novo korisničko ime, dodajte ga u grupu i resetirajte zadanu lozinku.
  2. Funkcijski znak "()". Omogućuje vam efikasno praćenje procesa izvršenja scenarija. Kao i u programskim jezicima poput C-nalik na PowerShell funkciju formira se unosom u nekoliko cmdleta u kovrčavim zagradama i spreman je pokrenuti potreban broj puta.
  3. Poseban simbol $ _. Koristi se za pisanje skriptnih blokova, filtera i proceduralnih izraza. $ _ uzima vrijednost trenutnog objekta i prenosi ga na sljedeće. Koristeći znak dolara, bez donjeg podvlake, možete odrediti ili unijeti varijablu: $ var \u003d "zdravo".

Šta je powerhell ise

Uključeno u PowerShell uslužni program je grafički windows aplikacija PowerShell Ise. Ovo je ljuska ili integrirano okruženje za pisanje skripti. ISE pruža programerima ogromnim rasponom mogućnosti. Uz njega možete kreirati, ispravljajte i uređivati \u200b\u200bskripte, otvorene tekstualne i XML datoteke. Boja označavanje sintakse uvelike olakšava testiranje i traženje grešaka u kodu.

ISE je mnogo pogodnije od konzole o PowerShell i može ga u potpunosti zamijeniti. Pomoću okoliša možete kopirati i umetnuti veliki fragmenti koda, počnite ne svu skriptu, već njegove zasebne dijelove. Za razliku od PowerShell, veličina prozora u ISE lako se mijenja pokazivač miša, kao kod rada sa uobičajenim programom.

Da biste isprobali ISE okruženje, unesite PowerShell Ise u meniju Start. Ako ne koristite Windows, već drugi OS, preuzmite i instalirajte distribuciju sa službene stranice. Nakon pokretanja aplikacije otvorit će se prozor od tri dijela. Najpopularnije skripte napisane su na dnu - Powerhell timovi, a u sredini se rezultat rezultat.

Započnite poznanstvo sa ISE i u donjem prozoru, unesite get-proces. Pritisnite karticu nekoliko puta. Pored CMDLET će se pojaviti njegovi parametri koji će se promijeniti nakon svakog pritiska na tipku. Ovo će vam biti prva zasjedanje sa okruženjem skripte iz Microsofta.

Jednako, međutim, omogućava vam da obavljate uobičajene naredbe naredbenog retka za stvaranje jedinstvenog okruženja u kojem bi administratori mogli obavljati različite zadatke na lokalnim i udaljenim sistemima.

Ovi administrativni zadaci obično se izvode pomoću cmdleta (u originalu cmdleti.), koji su specijalizirani .NET klase. Korisnik ih može kombinirati u skriptima (scenariji) koristeći različite dizajne, komunalne naredbene linije i odnose se na uobičajene klase .NET, WMI ili COM objekte. Pored toga, možete koristiti različite skladišta podataka, poput Windows datotečnog sustava ili registra, koju pruža PowerShell putem dobavljača (engleski. pružatelji usluga).

Windows PowerShell također nudi mehanizam ugradnje, zahvaljujući kojim se PowerShell izvršne komponente mogu ugraditi u druge aplikacije. Ove aplikacije mogu tada koristiti funkcionalnost PowerShell za implementaciju različitih operacija, uključujući i dostavljene grafičko sučelje. Ovaj pristup se primjenjuje na Microsoft Exchange Server 2007 za provođenje kontrolne funkcionalnosti u obliku powerhell cmdles i grafičkim upravljačkim programima u obliku powerhell školjki koji uzrokuju potrebne cmdlete. Dakle, grafički kontrolni sučelje je preko srednjeg sloja - PowerShell. Drugi microsoft aplikacije, Uključujući Microsoft SQL Server 2008, rukovodilac operacija sistema i menadžer za zaštitu sistema sistem također pružaju pristup njihovim upravljačkim sučeljima kroz Cmdlete PowerShell. U budućnosti sve aplikacije Microsoft poslužitelja na windows platforma koristit će PowerShell na ovaj ili onaj način.

Windows PowerShell uključuje svoju proširivu pomoć, dostupnu (uključujući iz naredbenog retka) putem cmdleta Get-Help.

Prapovijest

Clelyt

Scenariji

PowerShell uključuje jezik scenarija sa dinamičkim vrstama, na koji možete implementirati složene operacije pomoću cmdleta. Jezik skripte podržava varijable, funkcije, dizajne grane (ako-onda-else) ciklusa (dok, radeći i za foreach), strukturirana obrada greške i mnoge druge karakteristike, uključujući integraciju C.NET-a. Varijable u PowerShellu označene su $ prefiksom prije naziva; Mogu se dodijeliti bilo kakvo značenje, uključujući povlačenje cmdleta. Iako sam jezik nije strogo otkucan, unutar varijabli se spremaju svojim tipovima koji mogu biti osnovne vrste (ENG. primitivne vrste.) ili objekti. Redovi se mogu priložiti u pojedinačnim citatima ili dvostrukim citatima: Kada koristite dvostruke citate, varijable sadržane u nizu bit će zamijenjene njihovim vrijednostima. U skladu sa sintaksom varijabli, ako se put do datoteke postavlja u kovrčava zagrade sa prethodnim dolarnim znakom (koji jest, $ (C: \\ foo.txt)), tada će to biti veza sa sadržajem fajl. Sve što će biti dodijeljeno takvoj varijabli bit će zabilježeno u datoteci, a naprotiv, sadržaj datoteke bit će izdan prilikom pristupa njegovom sadržaju.

Možete podnijeti svojstva i metode objekta pomoću točke (.), Kao u sintaksi. PowerShell pruža posebne varijable poput $ ARGS, koji sadrže niz svih neimenovanih argumenata naredbenog retka, prenosive funkcije ili $ _, odnoseći se na trenutni objekt u transporteru i drugim konstrukcijama. PowerShell također sadrže nizove i asocijativne nizove. Pored toga, PowerShell automatski izračunava aritmetičke izraze unesene u naredbenu liniju i razumije popularni abort, kao što su GB (GB), MB (MB) i KB (CB).

U PowerShell-u možete kreirati vlastite funkcije koje prihvataju parametre pomoću funkcije funkcije. Popularni problem za mnoge početnike je da funkcije prihvataju argumente odvojene nerezom, već razmacima (poput komunalnih komunalnih ili cmdleta):

  1. : Izaziva funkciju sa dva argumenta.

Ovi argumenti mogu biti vezani za parametre navedene u deklaraciji funkcije. Takođe, oni ih mogu kontaktirati i kroz niz od $ ARGS.

  1. (, ): Uzrokuje funkciju s jednim argumentom, što je niz dva elementa.

PowerShell vam omogućuje pozivanje bilo kakvih .NET metoda zaključivanjem njihovih prostora nazivima u kvadratnim zagradama (), a zatim pomoću nekoliko boja (: :) da označi statičku metodu. Na primjer :: Writelin ("PowerShell"). Objekti se kreiraju pomoću CMDLET novog objekta, dodajte nova svojstva na njih koristeći CMDLET dodatka.

Za PowerShell Greška rukovanje pruža mehanizam zasnovan na on-liniju. U slučaju greške, objekti se izdaju koji sadrže podatke o pogrešci (objekt izuzetka) koji su presretnuti ključna riječ Zamka. Međutim, ponašanje kada se pojave pogreške konfigurirane. Dakle, možete konfigurirati PowerShell tako da u slučaju pogreške tiho se nastavlja izvršiti bez presretanja greške. Druga verzija PowerShell dodala je i pokušaj uhvatiti konačno dizajn.

Scenariji napisani u PowerShell-u mogu se sačuvati između sesija u datotekama.ps1. Tada možete koristiti čitavu skriptu ili pojedinačne funkcije iz njega. Skripte i funkcije koriste se poput CMDTAM-a, odnosno mogu biti naredbe u transporteru, mogu prenijeti parametre. Predmeti se mogu prenijeti između scenarija, funkcija i cmdleta u transporteru. Međutim, izvršenje powerhell skripta zabranjeno je prema zadanim postavkama, a mora biti omogućeno korištenjem CMDLET-izvedbenog snimka. PowerShell skripte mogu se potpisati digitalnim potpisom za provjeru njihovog integriteta.

PowerShell 2.0

Microsoft je objavio PowerShell 2.0 kao dio Windows 7 i Windows Server 2008 R2. Windows PowerShell 2.0 je unaprijed postavljen u ovim sistemima. Izuzetak je režim windows instalacije Server 2008 R2 u osnovnom režimu, gdje se PowerShell 2.0 može ručno konfigurirati. Za starije platforme dostupan je u sklopu okvira Windows upravljanja. PowerShell 2.0 čini neke promjene na skriptnom jeziku i API za ugradnju, pored novog 240 cmrt.

Nepotpuno popis novih funkcija uključenih u PowerShell 2.0:

  • PowerShell zaduživanje. Korištenje WS-menadžmenta, PowerShell 2.0 omogućava vam pozivanje skripta i cmdleta na udaljenim mašinama (uključujući nekoliko istovremeno), nadgledajte status njihovog izvršenja i ostvarite rezultate u obliku objekata (kroz serializaciju - deterializaciju). Također je moguće uspostaviti interaktivne sjednice i sjednice sa ograničenom funkcionalnošću.
  • Pozadinsko djelo. Sposobnost pozivanja niza naredbi asinhrono. Radovi se mogu pokrenuti na lokalnoj mašini ili nekoliko udaljenih mašina. Radovi ne mogu koristiti interaktivne cmdlete.
  • Transakcije. Omogućite programerima cmdleta i dobavljača da implementiraju transakcijske operacije. PowerShell 2.0 uključuje cmdlete za inicijalizaciju, potvrdu i povrat transakcija i mogućnost upravljanja transakcijama i koristiti ih u CMDT i dobavljačima.
  • Napredne funkcije. Sposobnost razvoja punog obloženih cmdleta koristeći samo powerhell.
  • SteppPablepipelines. Omogućuje korisniku da nadgleda funkcije početnog programa (), procesa () procesa () i endprocessa () prilikom pozivanja cmdleta.
  • Moduli. Dopustite autorima scenarija i administratorima da organizuju skripte PowerShell i postavljaju ih u samodovoljne module. Kodeks iz modula vrši se u vlastitom neovisnom kontekstu i ne utječe na okoliš izvan modula. Korištenje skripte, moduli mogu proglasiti ograničeno okruženje. Moduli mogu sadržavati javne i privatne funkcije i varijable.
  • Jezik podataka. Podskupina PowerShell jezika koji vam omogućava da odvojite definicije podataka iz izvršnih scenarija i omogućava uvoz lokaliziranih žica na skriptu tokom izvršenja.
  • Skripte za uklanjanje pogrešaka. Sposobnost instaliranja prekidačkih bodova (ENG. prelazni točke.) U powerhell skriptama ili funkcijama. Prekid se mogu instalirati na žice, stupce, naredbe ili čitati operacije i / ili varijable snimanja. Postoje cmdleti za ugradnju i kontrolu prekidačkih tačaka u scenarijima.
  • Događaj. Ova značajka omogućuje vam slušanje, preusmjeravanje i izvođenje radnje kada se pojave događaji upravljanja ili sistemskih događaja. Zahvaljujući događaju, PowerShell host može se obavijestiti o promjenama u statusu upravljanih objekata. Takođe omogućava scenarijima da se pretplatuju na objekte, psevente i blude i procesuiraju ih sinkrono i asinkrono.
  • Integrirano skriptno okruženje za Windows PowerShell (ISE). PowerShell 2.0 uključuje grafičku školjku za jezik u kojem je uključen ugrađeni ispravci, pozadinsko osvjetljenje sintakse, automatizacija naredbi. Školjka vam omogućuje pokretanje nekoliko neovisnih konzola za PowerShell s punom podrškom Unicode u sučelju sa oznakama. Zahvaljujući podršci daljinskog izvršenja, neke konzole mogu se obavljati na drugim računarima. Pored toga, ISE vam omogućuje izvršavanje dodijeljenog dijela scenarija, sadrži ugrađeni uređivač i omogućava vam proširenje i dopunjavanje vašeg sučelja pomoću PowerShell-a.
  • BITS Transfer - ugrađena podrška za prijenos datoteka preko mreže s prioritetom, multithreading, nastavka i asinhronim radom zasnovanim na pozadini inteligentne usluge prijenosa.
  • Mnogo novih cmdleta, uključujući, na primjer, van-Gridview, što omogućava prikazivanje rezultata transportera u grafičkoj tablici (na osnovu WPF-a), s razvrstavanjem i trenutnim mogućnostima pretraživanja.
  • Novi operateri - perlit, -vostru i zamjenski operater (@).
  • Pogreške obrade sa pokušajem uhvatiti-konačno. Za razliku od ostalih .NET jezika, u PowerShellu možete odrediti nekoliko vrsta izuzetaka za jedan blok hvatanja.
  • Blokiraj komentare. PowerShell 2.0 podržava blok komentara (plus za već postojeću liniju #) koristeći<# и #> kao ograničenja.
  • Novi API - dodao je različite mogućnosti, od veće kontrole nad PowerShell parser na sposobnost stvaranja ograničenih sesija (engleski. ograničeni rast.) U kojem možete izvesti samo ograničen skup uputstava i naredbi PowerShell.

Poređenje cmdleta sa sličnim timovima

Sljedeća tablica sadrži uzorak cmdleta isporučenih s PowerShell-om, s maksimalnim sličnim naredbama od ostalih široko poznatih školjki naredbenih linija.

Treba napomenuti da se ova tablica daje za površno poznavanje, ne pokriva sve karakteristike zastupljenih granata.

Windows PowerShell
(Cmdlet)
Windows PowerShell
(Alias)
cmd.exe / command.com.
(MS-DOS, Windows, OS / 2 itd.)
Bash
(Unix, BSD, Linux, Mac OS X itd.)
Opis
Dobiti-lokaciju gL, pwd. pwd. Prikazuje trenutni radni direktorij
Set-lokacija sL, CD, Chdir , Chdir Mijenja trenutni katalog
Clear-Host. cLS, Clear cLS. jasan Brisanje ekrana
Predmet kopiranja. cPI, Kopiraj, CP kopija. Kopira jednu ili više datoteka ili direktorija (u PowerShellu možete kopirati i predmete drugih davatelja podataka)
Pomoć. pomoć, čoveče. pomoć. Čovječe. Pomoć timova
Izvadite-stavku. rI, DEL, ERASE, RMDIR, RD, RM del, Erase, RMDIR, , RMDIR Brisanje datoteke / imenika (ili druge stavke u PowerShell davateljima podataka).
Preimenuj-artikl. rNI, Ren. ren, preimenuj. Preimenuj datoteku / direktorij
Pomicanje stavke. mI, MOVE, MV pomicanje. Pomiče datoteku / direktorij na novu lokaciju
Get-ChildEm. gCI, dir, ls dir. Prikazuje sve datoteke / direktorije u trenutnom direktoriju
Pisanje izlaza echo, pisati. eho. eho. Prikazuje žice, varijable za standardni izlaz
Pop-lokacija popd. popd. popd. Mijenja trenutni direktorij na onoj koji je zadnji put postavljen na snop
Push-lokacija pushd. pushd. pushd. Stavlja trenutni direktorij na snop
Postavljena varijabla. sv, set. set. set. Postavljanje vrijednosti varijable / stvaranja varijable
Dobit gC, tip, mačka vrsta kat. Dobiva sadržaj datoteke
Select-String pronađi, Findstr. grep. Prikazuje žice pogodne pod uvjetom
Get-Proces. gPS, PS tlist, Popis zadataka. Prikazuje sve pokretanje procesa
Stop-proces. sPPS, ubiti ubiti, zadatak ubiti Zaustavlja proces trčanja
Tee-objekt. tee. n / A. tee. Šalje ulazne podatke u datoteku ili varijablu, a zatim ih dalje prenosi transporter

vidjeti i

  • PowerShell Ise.

Bilješke

Literatura

  • Popov A.V. Uvod u Windows PowerShell. - St. Petersburg. : BHV-Petersburg, 2009. - P. 464. - ISBN 978-5-9775-0283-2

Linkove

  • Windows PowerShell 1.0 instalacijski paket za preuzimanje centra za Windows Vista
  • Izvještaj o mogućnostima ovlaštenja i pisanje skripta za pisanje skripta
  • Okvir za upravljanje Windows-om (uključujući PowerShell 2.0, WinRM 2.0 i bits 4.0) za Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008
  • Blog "PowerShell i druge skripte" (rus.)
  • (rus.)
  • "Powerhell blog i ne samo" (rus.)
  • Besplatna ruska knjiga o powershell (rus.)
  • Druga besplatna engleska knjiga o PowerShell (engleski)
  • Windows PowerShell Web čvor (engleski)
  • PowerShell kapetan i administracija budućnosti (rus.)

Windows PowerShell jedan je od važnih alata u sistemu sistema windows Administrator. PowerShell je moćan alat koji ne bi trebao biti zanemaren. Ovaj članak ima za cilj osigurati osnovne radne vještine sa Windows PowerShell-om.

PowerShell je nešto više od samo zaporžene linije. Prva verzija PowerShella pojavila se 2006. godine, razlog za njegov razvoj bio je primitivnost klasičnog tima windows žicenije dozvoljeno da izvode složene algoritme.

Windows PowerShell je unaprijed postavljen u sustavima Windows 7, 8, 8, 8.1 i Windows Server 2008 R2, 2012 R2, a mogu se dodati i u Windows XP SP3, Vista i Windows Server 2003 SP2. PowerShell sučelje podsjeća na dobro poznatu sučelje naredbenog retka.


Windows sučelje PowerShell

Kao što je već spomenuto, sučelje naredbenog retka nije ograničeno. PowerShell pruža vlastiti scenarijski jezik sustava administratora koji vam omogućava automatizirati složene akcije.

Naredbe koje rade u PowerShell-u mogu biti u obliku cmdleta, funkcija, skripta i vanjskih izvršnih datoteka.

Clelyt - Ovo je nova vrsta naredbi ugrađenih u PowerShell. Naredbe ove vrste sastavljene su u DLL bibliotekama i učitavaju se u PowerShell proces tokom pokretanja. Za sebe cmdlete kao aplikacije ne pokreću.

Imena cmdleta odgovaraju predlošku "Imenica glagola". Glagol opisuje radnju koju želimo napraviti i imenica - objekt koji će se djelovati akcija. Na primjer, da biste očistili ekran konzole, morate unijeti Clear-host naredbu. Možete pregledati dostupne naredbe unosom get-komandne konzole.

Šalice mogu imati parametre. Općenito, izgleda ovako:

comandline Ime -Pameter1 -Pameter2 Argument1 Argument2

Argumenti nisu parametri imena.

Kako radi? Na primjer, imamo DIR naredbu koja prikazuje sadržaj direktorija.

Dir timski primer

Pretpostavimo da sam izgubio određenu datoteku. Neka bude datoteka certifikata putem Photoshopa. Sjećam se tačno da naziv datoteke sadrži "Photoshop" i da je ovo pdf datoteka. Kao što se sjećam, datoteka se nalazi u ovom direktoriju. Mogu prikazati popis svih datoteka direktorija kao u gornjem primjeru i ručno pretraživanje datoteke. I mogu primijeniti parametar -filter koji će prikazati samo one datoteke koje odgovaraju određenom argumentu. Kao argument bit će * Photoshop * .pdf. Zvezdice oko riječi "Photoshop" stanite jer se ne sjećam tačno ime datoteke i usmjeravajući powerhell na činjenicu da prije i nakon "Photoshopa" može postojati bilo koji znakovi. Takođe ukazuju na traženje PDF datoteke.

Dakle, pronađena je datoteka za pretraživanje. U općem obliku cmdleta imenovano je da jedan cmdlet može imati nekoliko parametara. Zauzvrat, parametri ne imaju uvijek argumente.

Malo komplicira naš primjer. Recimo sada moram pronaći knjigu Christophera Dugurtestiju. Timu dir -Filter * Dougherty * .pdf Nisam učinio ništa. To znači da u ovom katalogu nema knjiga, ali sjećam se tačno da je negdje ovdje, očito, u poddirektorijima. Da biste pretražite i u poddirektorijum, dodajte parametar -recurse.

Pretraga će trajati malo duže, ali će se naći željena knjiga.

Kao što vidite, parametar -Recurse ne sadrži argument. Samim, parametri mogu stajati u bilo kojem redoslijedu, glavna stvar je u potpunosti pridržavati logiku kada traženi argument slijedi parametar za koji je namijenjen. Dakle, tim dir -Filter * Dougherty * .pdf -Recurse će raditi na isti način kao dir -recurse -filter * dougherty * .pdf.

Imena parametara mogu se napisati u skraćenom obliku, što je prilično zgodno za svakodnevni rad sa naredbenom linijom. Smanjenje bi trebalo biti jasno Tumaču, I.E. Ne dozvolite dvostrukim tumačenjima. Na primjer, parametar -Recurse može se smanjiti na jednostavno -r, a smanjenje -Filter u -F će uzrokovati grešku, jer Još uvijek postoji parametar. U ovom slučaju možete smanjiti -filter na -fi.

Dakle, imamo ideju o Keltsu. Sljedeći .

Nakon prelaska na Windows operativni sistem 10, mnogi su korisnici primijetili gumb "Run PowerShell" u sučelju vodiča. S tim u vezi, na mreži se pojavilo puno pitanja, korisnici su zainteresirani za program Windows PowerShell i za ono što je potrebno. Ako vas zanima i za ovo pitanje, ovaj materijal vam mora pomoći.

Windows PowerShell je skriptni jezik i program sa sučeljem naredbenog retka za obavljanje ovih skripti. Ovaj je jezik objavljen 2006. godine kao dio drugog servisnog paketa za Windows XP i od tada je PowerShell dio svih Microsoft operativnih sistema. U 2008. godini se pojavila druga verzija ovog jezikaI počevši od Windows 7 to je to. Skripte Windows PowerShell imaju proširenje PS1 i mogu se pokrenuti kao šišmiša i CMD datoteke poznate.

Windows Powerseshell je skriptni jezik koji je razvijen prvenstveno za Microsoft poslovne kupce kojima su potrebni moćni alati za automatiziranje zadataka upravljanja poslužiteljem i računare na windows baza podataka. Osnova za ovaj jezik koristila je platforma.net, razvio Microsoft od 2002.

Windows PowerShell omogućava vam automatiziranje puno raznih zadataka. S njom možete upravljati datotekama, uslugama, procesima, računima i postavkama. PowerShell jezik razumije mnogo timova iz običnih Naredbena linija Windows (CMD), ali ima i svoj jezik koji se sastoji od vlastitih naredbi, koji se ovdje nazivaju Celts.

Šalice (u engleskom cmdletu) formiraju pravilo Glogol-imenica, na primjer, dobivanje pomoći. Možete se upoznati sa osnovama Windows PowerShell-a pomoću pomoći (dobit-helmon cmdlet). Da biste dobili opće informacije, jednostavno unesite naredbu "Get-Help", unesite "Get-Help-Ime-cmdlet" za primanje određenog cmdleta. Na primjer, ako unesete naredbu "Get-HELP Get-Proces", dobit ćemo pomoć CMOT-a get procesa.

Kako pokrenuti Windows PowerShell program

Program Windows PowerShell može se pokrenuti različiti putevi. Najlakša opcija je jednostavno koristiti pretraživanje u meniju Start. Da biste to učinili, otvorite meni Start, unesite traži upit "Windows PowerShell", nakon čega otvorite pronađeni program.

Možete koristiti i kombinaciju windows-R tipke I unesite naredbu "PowerShell".

U Windows 10 program PowerShell može se pokrenuti iz bilo koje mape. Da biste to učinili, kliknite na gumb "File" u gornjem lijevom uglu vodiča i odaberite "Pokreni Windows PowerShell".

Kako koristiti Windows PowerShell

Kao što smo rekli, uz pomoć programa PowerShell, mnogi rutinski zadaci mogu automatizirati operativni sistem Windows. Na primjer, mi ćemo pokazati neke od značajki koje ovaj alat posjeduje, kako bi postao jasan kako da ga koristi.

Košarica za čišćenje. Postoji poseban cmdlet za čišćenje košare, koja se naziva "Clear-recikliranje". Ovaj cmdlet je koristan prilikom pisanja skripta za održavanje računara. Prilikom izvršavanja cmdleta morate odrediti disk na kojem želite očistiti koš. Primjer:

Clear-recikliranjeBIN C:

U donjem snimku zaslona može se vidjeti kako se izvodi ovaj cmdlet. Nakon ulaska u naredbu "Clear-recikliranje C:" pojavljuje se zahtjev za potvrdu. Da biste nastavili izvršavanje cmdleta, morate unijeti slovo "Y" i pritisnite Enter.

Ako dodate "-forče" na cmdlet "Clear-recikliranje C:", a zatim čišćenje košara vrši se bez zahtjeva za potvrdu. Snimka zaslona na dnu.

Arhiviranje datoteka. Za arhiviranje i raspakiranje datoteka, na raspolaganju su cmdleti arhive kompresa i širenje arhiva. Na primjer, kako bi se arhivirala mapa "C: \\ test \\" na arhivu "C: \\ arhiva \\ test2.zip" trebate izvršiti sledeće cmdlet:

Arhiva komprimiranja -Literalpath C: \\ test \\ -DestictionPath C: \\ arhiva \\ test2.zip

Kao rezultat izvršenja gore prikazanog naredbe, datoteka "test2.zip" pojavljuje se u mapi "C: \\ arhiva \\" u kojoj će se pojaviti sadržaj C: \\ test \\ test \\ mape.

Lista cmdleta za Windows PowerShell

Za Windows PowerShell postoji ogroman broj različitih cmdleta i opisuje ih sve u jednom članku neće raditi. Stoga predlažemo da se upoznamo sa najtraženijima od:

  • Dobiti pomoć - primanje referenci;
  • Ažuriraj-Help - Reference Reference;
  • Get-naredba - Potražite cmdlete;
  • Get-Alias \u200b\u200b- Potražite pseudonike za cmdlete;
  • Get-PSDrive - Pogledajte spojene diskove;
  • Get-član - gledanje svojstava i metoda koje imaju predmet;
  • Get-WindowsFeature - Pogledajte informacije o dostupne uloge i komponente servera;
  • Install-WindowsFeature (analogni dodatak-WindowsFeature) - postavlja uloge ili komponente na željeni poslužitelj;
  • Deinstaliranje-WindowsFeature (analogna uklanjanja-WindowsFeature) - uklanja ulogu ili komponentu poslužitelja;
  • Get-History - Pogledajte istoriju timova koji su uvedeni u ovoj sesiji;
  • Promjenjiva se - pogledajte popis varijabli i njihovih vrijednosti;
  • Nova varijabla - stvaranje nove varijable;
  • Postavljena varijabla - postavljanje vrijednosti varijable;
  • Jasna varijabla - uklanjanje varijabilne vrijednosti;
  • Uklonite varijablu - uklanjanje varijable i njegovih vrijednosti;
  • Lista formatiranja - Pogledajte rezultat naredbe kao liste svojstava, gdje u svakom retku zasebnu nekretninu;
  • FORMAT-tablica - Pogledajte rezultat naredbe u formatima tablice;
  • Wide format - Pogledajte rezultat naredbe u obliku široke tablice, u kojem je prikazano samo jedna nekretnina za svaki objekt;
  • Format-Custom - Pogledajte rezultat naredbe pomoću korisničkog pregleda;
  • Izvoz-CSV - Izvoz podataka u CSV format;
  • Import-CSV - Uvezi podatke iz CSV datoteke;
  • Export-CLIXML - Izvozi podataka u XML format;

Možete dobiti kompletnu listu cmdlets za Windows PowerShell pokretanjem get-naredbe-komandice-komandice cmdlet cmdlet.