Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Recenzije
  • Uvod u Windows PowerShell, što su cmdleti. Osnove sustava Windows PowerShell powershell cmdleti

Uvod u Windows PowerShell, što su cmdleti. Osnove sustava Windows PowerShell powershell cmdleti

Mnogi korisnici znaju za naredbeni redak, ali vrlo malo njih je čulo za Windows PowerShell. U određenom smislu, PowerShell je alat koji je namijenjen zamijeniti naredbeni redak i pružiti moćnije mogućnosti za upravljanje operacijskim sustavom Windows. U ovom članku pokušat ćemo na pristupačan način objasniti što je to alat, zašto je toliko moćan i tko ga najčešće koristi.

Što je PowerShell?

Za bolje razumijevanje, prvo moramo razumjeti što je školjka. U informatici, ljuska je korisničko sučelje koje omogućuje pristup raznim uslugama operacijskog sustava. Ljuska može biti bazirana na naredbenom retku ili može uključivati ​​grafičko korisničko sučelje (GUI).

Windows PowerShell je ljuska koju je razvio Microsoft u svrhu automatizacije zadataka i upravljanja konfiguracijom. Ovaj moćni omotač temelji se na .NET frameworku i uključuje omotač naredbenog retka i skriptni jezik.

Također može postojati Windows PowerShell ISE na vrhu standardne ljuske retka za naredbe. ISE djeluje kao integrirano okruženje za skriptiranje – to je grafičko korisničko sučelje koje vam omogućuje stvaranje različitih skripti bez potrebe za unosom svih naredbi u naredbeni redak.

Prva verzija PowerShell-a objavljena je u studenom 2006. za Windows XP, Windows Server 2003 i Windows Vista. Najnovija je verzija 4.0, koja je objavljena u listopadu 2013. Dolazi prema zadanim postavkama sa sustavima Windows 8.1 i Windows Server 2012 R2.

Što možete učiniti s PowerShell-om?

Microsoft je razvio Windows PowerShell kao alat koji vam pomaže automatizirati i brzo riješiti mnoge dosadne administrativne zadatke. Na primjer, možete koristiti PowerShell da biste vidjeli sve USB uređaje instalirane na jednom ili više računala u mreži ili možete konfigurirati dugotrajni zadatak da se izvodi u pozadini dok obavljate druge poslove. Također možete identificirati i uništiti procese koji ne reagiraju ili filtrirati određene informacije o računalima na mreži i izvesti ih u HTML formatu.

Mogućnosti PowerShell-a omogućuju vam da pojednostavite i automatizirate zamorne i ponavljajuće zadatke skriptiranjem i kombiniranjem više naredbi zajedno.

Ako ste mrežni administrator, vidjet ćete da je PowerShell vrlo koristan kada radite s Active Directoryjem. S obzirom na to da alat sadrži stotine prilagođenih naredbi zvanih cmdlet, vjerojatnost da vam PowerShell može pomoći da postanete produktivniji je vrlo visoka.

Kako mogu pokrenuti PowerShell u sustavu Windows 8.1?

Ako nemate PowerShell pločicu na početnom zaslonu ili prečac na radnoj površini, možete je otvoriti pretraživanjem, što je jedan od najjednostavnijih načina. Pritisnite + Q, upišite "powershell", a zatim pritisnite Enter.

Alternativno, možete otvoriti PowerShell iz odjeljka Aplikacije na početnom zaslonu: idite na početni zaslon i pomaknite pokazivač u donji lijevi kut, odmah ispod posljednje pločice u prvom stupcu. Kliknite ikonu strelice prema dolje. Zatim kliknite na ikonu PowerShell u odjeljku "System Tools".

Da biste otvorili PowerShell iz dijaloškog okvira Pokreni, pritisnite tipke + R, upišite powershell i pritisnite Enter.

Kako mogu pokrenuti PowerShell u sustavu Windows 7?

U sustavu Windows 7 alat možete pronaći po ključnoj riječi "powershell" u izborniku Start.

Alternativno, možete otvoriti PowerShell iz izbornika Start u odjeljku Pribor.

Očito, gornja naredba u prozoru Run radi i u sustavu Windows 7.

Tko obično koristi PowerShell?

Bez sumnje, PowerShell je izbor mnogih IT administratora. I ne uzalud, jer alat uvelike pojednostavljuje operacije upravljanja i smanjuje količinu posla u velikim korporativnim mrežama.

Pretpostavimo da upravljate velikom mrežom od preko pet stotina poslužitelja i trebate implementirati novo sigurnosno rješenje koje ovisi o nekoj usluzi koja će se izvoditi na tim poslužiteljima. Naravno, možete se spojiti na svaki poslužitelj i vidjeti je li potrebna usluga instalirana i radi li se na njima. Međutim, u ovom slučaju malo je vjerojatno da će vaš menadžment biti zadovoljan, jer će vam trebati predugo da izvršite zadatak.

Uz PowerShell ovaj posao možete obaviti za nekoliko minuta, jer se cijela operacija može obaviti s jednom skriptom koja će prikupiti informacije o uslugama koje rade na navedenim poslužiteljima i spremiti ih kao tekstualnu datoteku, na primjer.

PowerShell vam omogućuje puno više nego što se može pokriti u jednom članku, pa ako ste stvarno zainteresirani, toplo preporučamo da kupite i pročitate jednu od mnogih knjiga o mogućnostima powerShell-a.

Ugodan dan!

5. studenog 2014. u 20:07 sati

Skočni početak u PowerShellu (I. dio)

  • administracija sustava,
  • PowerShell
  • Vodič

Samo automatizacija. Samo PowerShell.

Predgovor

Iz hobija i ako imam vremena predajem studentima na UKIT-u (bivši Moskovski državni fakultet informacijskih tehnologija). Trenutno imam malo vremena da se posvetim grupi studenata, ali sasvim dovoljno da pripremim post ovdje na Habréu.

Radim kao administrator sustava za veliku ne-IT tvrtku s puno IT resursa. Po prirodi djelatnosti, čini se da rješava veliki broj istovrstnih zadataka za servisiranje korisnika.

S PowerShell jezikom sam se upoznao prije otprilike dvije godine, ali sam ga počeo proučavati tek godinu dana kasnije, ne shvaćajući isprva njegove ogromne mogućnosti. U članku ću se prije svega usredotočiti na one koji žele početi raditi s PowerShellom, ali mu još ne vjeruju ili ne znaju s koje strane pristupiti ovom čudu.

Upozorenje: PowerShell stvara ovisnost.

Uvod

Wikipedia nam kaže:
Windows PowerShell- proširivi alat za automatizaciju iz Microsoft, koji se sastoji od ljuske sa sučeljem naredbenog retka i popratnog skriptnog jezika.

PowerShell može izgledati kao naredbeni redak:


powershell.exe

Ili kao aplikacija:


powershell_ise.exe

Powershell_ise.exe pod nazivom Integrirano okruženje za skriptiranje - Windows PowerShell ISE. Omogućuje vam rad s jezikom u prikladnom okruženju s isticanjem sintakse, konstruktorom naredbi, naredbama za samodovršavanje pritiskom na TAB i drugim užicima. Idealno za stvaranje i testiranje skripti.

Za početak okoliša powershell.exe ili powershell_ise.exe samo upišite isti naziv u redak za izvršenje.

Datoteka skripte PowerShell ima ekstenziju .ps1.

Skripta se ne može pokrenuti s dvostrukim LMB-om. To je učinjeno posebno kako se ne bi oštetio sustav slučajnim pokretanjem skripte.

Za početak, klikom na desnu tipku miša odaberite "Pokreni s PowerShellom":

Osim činjenice da postoji ograničenje pokretanja LMB skripti, prema zadanim postavkama izvođenje skripti u sustavu je zabranjeno, opet, iz gore opisanog razloga - da se ne bi oštetio sustav. Da biste provjerili trenutnu politiku izvršavanja, pokrenite naredbu:

Get-ExecutionPolicy

Dobit ćemo jednu od sljedećih vrijednosti. Najvjerojatnije, ako je ovo bilo prvo lansiranje, dobit ćemo Ograničen.

  • Ograničen- Skripte se ne mogu pokrenuti;
  • Sve Potpisano- Mogu se pokretati samo skripte koje je potpisao pouzdani izdavač. Potvrda će se tražiti prije izvršavanja skripte pouzdanog izdavača;
  • RemoteSigned- Dopušteno je izvršavanje skripti koje smo izradili i preuzetih skripti potpisanih od pouzdanog izdavača;
  • Neograničen- Nema ograničenja, sve se skripte mogu pokrenuti.

Za izvršenje i testiranje, spustimo politiku na RemoteSigned pokretanjem naredbe:

Set-ExecutionPolicy RemoteSigned

Početak rada

Cmdlet
  • Cmdleti su PowerShell naredbe koje pružaju različite funkcionalnosti;
  • Cmdleti mogu biti ili sistemski cmdleti ili prilagođeni cmdleti koje je netko stvorio;
  • Cmdleti se imenuju pomoću pravila glagola i imenice, što ih čini lakšim za pamćenje;
  • Cmdleti prikazuju rezultate kao objekte ili zbirke objekata;
  • Cmdleti mogu primati podatke za obradu i prenositi podatke duž cjevovoda (više o cjevovodima kasnije);
  • Cmdleti ne razlikuju velika i mala slova (možete napisati get-process, Get-Process i GeT-pRoCeSs);
  • Nakon cmdleta, ne morate stavljati " ; ", osim kada pokrećemo više cmdleta u jednom retku (Get-Process; Get-Services).

Na primjer, da bismo dobili trenutne procese, pokrenut ćemo naredbu:

I dobivamo rezultat:

Isprobajte sami:

Get-Service # za dobivanje statusa usluga koje rade na računalima

Get-Content C: \ Windows \ System32 \ drivers \ etc \ hosts # da biste dobili sadržaj datoteke. U ovom slučaju, datoteka hosta

Ne morate znati sve cmdlete napamet. Dobiti pomoć spasit će situaciju.
Možete dobiti informacije o svim dostupnim cmdletima upisivanjem sljedeće naredbe:

Get-Help -Category cmdlet

Ako koristimo PowerShell ISE, olakšavamo proces razvoja.
Dovoljno je unijeti crticu" - "nakon ulaska u cmdlet, dobit ćemo sve moguće opcije za parametre i njihove vrste:

Pokušajte pokrenuti:

Get-Service -Naziv p *

Ako ipak zaboravimo koja svojstva ima ovaj ili onaj cmdlet, provest ćemo ga Get-member:

Get-Proces | Get-Member # Znak "|" zove transporter. O njemu u nastavku.

Nemate dovoljno informacija? Pogledajmo pomoć s parametrom -Primjeri:

Get-Help Get-Process -Primjeri

Dobijamo opis Get-Proces, pa čak i s primjerima upotrebe:

  • Cmdleti mogu imati skraćene nazive - aliase. Na primjer, umjesto Dobiti pomoć može se koristiti jednostavno Pomozite... Za sve kratice pokrenite Get-Alias.

Pokušajte pokrenuti:

Bilježnica Start-Process

Što je slično pisanju:

Pokrenite bilježnicu

Sada zaustavimo proces:

Zaustavi proces -bilježnica s imenima

Spps -bilježnica s imenima

Ranije smo rekli da se cmdleti imenuju prema pravilu glagola i imenice. Pojasnit ću da glagol ne mora biti Dobiti... Osim onoga što možemo dobiti, možemo tražiti Set(zapamtite Set-ExecutionPolicy), pokrenite Početak, stani Stop, izlaz Van, stvoriti Novi i mnogi drugi. Naziv cmdleta nije ograničen ni na što, a kada kreiramo vlastiti, moći ćemo ga imenovati kako god želimo.

Pokušajmo izvesti u datoteku:

"Zdravo, Habr!" | Izlazna datoteka C: \ test.txt & C: \ test.txt

Usput, na sličan način možete to napisati i ovako:

"Zdravo, Habr!" > C: \ test.txt & C: \ test.txt

Sa zagonetnim slovima i upornim treptanjem kursora? Ovo je naredbeni redak. Uslužni program je prisutan u svim verzijama sustava Windows. Uz njegovu pomoć, prikladno je upravljati sustavom, pozivati ​​programe, pronaći datoteke. Ali za profesionalni rad cmd nije dovoljno funkcionalan. Stoga je Microsoft odlučio popraviti sve nedostatke konzole i izdao proizvod pod nazivom Windows PowerShell. Čitajte dalje o tome što je to i kako koristiti razvoj.

Što je Windows PowerShell

PowerShell je interaktivno, objektno orijentirano naredbeno okruženje sa značajkama skriptnog jezika. PowerShell 1.0 službeno je objavljen od Microsofta 14. studenog 2006. Programeri su kombinirali CLI s .NET Frameworkom za upravljanje lokalnim i udaljenim mrežama.

Imajte na umu da Windows PowerShell nije jednostavna operativna ljuska. Microsoft je stvorio moćan, proširiv, ali fleksibilan alat za automatizaciju upravljanja koji može funkcionirati kao namjenski skriptni jezik.

Microsoft je 18. kolovoza 2016. objavio da je Windows PowerShell sada proizvod otvorenog koda dostupan svakom razvojnom programeru. Tvrtka je također dodala podršku za operacijske sustave temeljene na Unixu, uključujući distribucije Linuxa i OS X.

Kako upravljati PowerShellom

Za izvođenje zadataka koriste se cmdleti ili cmdleti. To su male naredbe napisane kao izvršne datoteke. U verziji 2.0 PowerShell-a za Windows XP i Server 2008 R2, kreatori su dodali module koji vam omogućuju upravljanje velikim brojem resursa, uključujući Active Directory i Exchange Server.

Trenutno postoji preko 130 modula i naredbi ugrađenih u PowerShell Automation alat. Omogućuju pristup datotekama, mrežama, registru, administraciji i drugim mogućnostima sustava:

  • postavljanje vremena i datuma;
  • rad s mapama i pojedinačnim datotekama;
  • dobivanje pomoći i dodatnih informacija;
  • uvoz i pohranu podataka;
  • metode skriptiranja;
  • odvojene skripte i aplikacije;
  • provjera sigurnosti sustava i rad s deskriptorima;
  • administracija sustava;
  • provjera prostora na disku.

S obzirom da je Windows PowerShell proširivo okruženje, korisnici mogu kreirati vlastite naredbe, pisati "autorske" module koristeći .Net jezik.

Početak rada s PowerShellom

Najnovija beta verzija 6.0 PowerShell-a objavljena je 2016. U sustavima Windows 7, 8 i 10 uslužni program je ugrađen. Ako koristite drugi operativni sustav, morat ćete preuzeti aplikaciju. Da biste to učinili, idite na službenu web stranicu microfoft.com i u okvir za pretraživanje unesite Instaliranje Windows PowerShell-a. Sustav će vas automatski odvesti na stranicu s najnovijim izdanjima proizvoda. Odaberite svoj OS s popisa i kliknite Preuzmi.

Kada je datoteka potpuno preuzeta, dvaput je kliknite da biste je otvorili. Prema zadanim postavkama, okruženje će se instalirati u ProgramFiles \ PowerShell \ i stvoriti prečac u izborniku Start. Ako ste sretni korisnik Windowsa, kliknite na ikonu sustava u donjem lijevom kutu i upišite PowerShell u Find Programs and Files. Pokrenite aplikaciju, unesite svoj prvi cmdlet i počnite.

Popis potrebnih naredbi i uputa za PowerShell

Naziv svakog cmdleta je u obliku glagol-imenica ili radnja-objekt. Evo popisa najvažnijih PowerShell cmdleta za Windows 10 i starije, počevši od XP-a. Oni će biti korisni čak i za početnike koji su tek jučer naučili kako spremati tekstualne dokumente.

  1. Dobiti pomoć. Ugrađeni cmdlet u ljusku. Namijenjen je za pozivanje pomoći i pruža korisne informacije o sintaksi, programima, njihovoj namjeni i drugim cmdletima. Ako ste napisali ipconfig /? U običnom interpreteru naredbi, tada u PowerShell trebate upisati Get-Help Get-Process.
  2. Get-Content. Pojednostavljuje postupak čitanja datoteka za početnike i administratore sustava. Ako je ranije bilo potrebno otvoriti ručku i pročitati sve retke dokumenta jedan po jedan, sada je dovoljno prenijeti datoteku u cmdlet. Da biste to učinili, upišite u konzolu C: \> Get-Content C: \ ... \ "naziv datoteke". "Proširenje".
  3. Get-Service. Pristup informacijama o uslugama instaliranim na računalu.
  4. Get-member. Daje informacije o objektu koji vraća cmdlet i omogućuje vam da vidite njegova svojstva i metode.
  5. Get-Command. Traži cmdletove, vraća sve informacije o njima, uključujući informacije o funkcijama, skriptama, aplikacijama i drugim stavkama. U verziji 5.0 PowerShell-a za Windows 10 stupac Verzija je dodan u Get-Command, a sada CommandDet prikazuje više verzija istog modula odjednom.
  6. Stop- \ Start-Service. Nezamjenjiv pomoćnik za administratore. Cmdlet pokreće i zaustavlja usluge na udaljenim i lokalnim računalima.

Posebni znakovi za skripte

Osim cmdleta, uslužni program PowerShell u sustavu Windows 7 i novijim uključuje posebne znakove kao što su $ _ ili (). Ikone su najviše zbunjujuće za pridošlice koji se nisu bavili sustavima ili programiranjem sličnim Linuxu.

  1. Okomita traka "|". Ovaj simbol se koristi za cjevovodne programe. U konzoli se uključuje kada želite reći naredbi s desne strane okomite trake da prihvati izlaz naredbe s lijeve strane. PowerShell koristi okomitu traku za otprilike istu svrhu kombinirajući više naredbi odjednom. Na primjer, stvorite novo korisničko ime, dodajte ga u grupu i poništite zadanu lozinku.
  2. Znak funkcije "()". Omogućuje vam učinkovitu kontrolu procesa izvršavanja skripte. Kao iu programskim jezicima sličnim C-u, funkcija u PowerShell-u se formira omotavanjem više cmdleta u vitičaste zagrade i spremna je za pokretanje koliko god je puta potrebno.
  3. Posebni znak $ _. Koristi se za pisanje blokova skripte, filtara i proceduralnih izraza. $ _ uzima vrijednost trenutnog objekta i prosljeđuje je sljedećem. Možete koristiti znak dolara bez donje crte da označite ili unesete varijablu: $ var = "Halo".

Što je PowerShell ISE

PowerShell dolazi s grafičkom Windows PowerShell ISE aplikacijom. To je ljuska ili okvir za pisanje skripti. ISE pruža programerima ogroman raspon opcija. Uz njegovu pomoć možete kreirati, otklanjati pogreške i uređivati ​​skripte, otvarati tekstualne i XML datoteke. Isticanje sintakse u boji znatno olakšava testiranje i pronalaženje pogrešaka u vašem kodu.

ISE je puno praktičniji od PowerShell konzole i može ga u potpunosti zamijeniti. Koristeći okruženje, možete kopirati i zalijepiti velike fragmente koda, pokrenuti ne cijelu skriptu, već njezine pojedinačne dijelove. Za razliku od PowerShell-a, veličina prozora u ISE-u može se lako promijeniti pomoću pokazivača miša, kao kod rada s običnim programom.

Da biste isprobali ISE, s izbornika Start upišite PowerShell ISE. Ako ne koristite Windows, već drugi OS, preuzmite i instalirajte distribucijski komplet sa službene web stranice. Nakon pokretanja aplikacije otvorit će se trodijelni prozor. Skripte su napisane na vrhu, PowerShell naredbe su na dnu, a rezultat je vidljiv u sredini.

Započnite s ISE i unesite Get-Process u donji prozor. Pritisnite Tab nekoliko puta. Parametri za cmdlet pojavljuju se pored cmdleta i mijenjaju se nakon svakog pritiska na tipku. Ovo će biti vaša prva sesija s Microsoftovim okruženjem za skriptiranje.

73094

A istražujući izbornik Start u sustavu Windows 7 ili Windows 8 Start Screen 1, korisnici početnici često otkrivaju aplikacije čiju svrhu ne razumiju. Jedna od takvih aplikacija je PowerShell. Što je ovaj PowerShell i ima li smisla od toga? Pa, budući da ga je netko izmislio i integrirao u Windows, onda još ima smisla. Inače, Microsoft je taj koji je izumio PowerShell.


Dakle, . Ova je aplikacija prvenstveno namijenjena administratorima sustava, no obični korisnici, pogotovo početnici, teško da će imati koristi od nje za sebe. PowerShell je moderna, standardizirana ljuska naredbenog retka koja pruža veću fleksibilnost za upravljanje računalom sa sustavom Windows. U suštini, PowerShell je isti naredbeni redak ali samo puno funkcionalniji.

Što radi ovaj administrativni alat? Puno stvari. Administratori sustava i napredni korisnici mogu ga koristiti za upravljanje procesima, uslugama, pohranama datoteka, računima, pa čak i poslužiteljima. Također, ljuska vam omogućuje pokretanje vanjskih naredbi, rad s objektima .NETO, COM i XML, raditi različite trikove, itd., stvarati i izvršavati vlastite skripte. Usput, postoji posebna grafička konzola za pisanje skripti u sustavu Windows. ISE koji je svojevrsni dodatak glavnom PowerShellu.

Kao i konzola CMD, PowerShell ima vlastiti skup naredbi koje se nazivaju cmdleti. Uslužni program prepoznaje mnoge CMD naredbe, ali općenito se sintaksa jezika, definicije cmdlet-a i njihovi parametri razlikuju od onoga što su korisnici navikli vidjeti u običnom retku za naredbe. Također, poznate naredbe poput red , CD , kopirati i slično, što PowerShell dobro razumije, zapravo su aliasi. Na primjer, naredba r , koji se koristi za pregled datotečnog sustava odgovara "nativnom" cmdletu Get-ChildItem... Aliasi, ili kako se kaže, aliasi su isključivo radi praktičnosti.

Početkom će korisniku biti teško razumjeti PowerShell, pogotovo ako nije upoznat s barem osnovama običnog naredbenog retka. I nema toliko priručnika i priručnika koji su dovoljno jasni i laki za učenje. Postoji dobar vodič koji je napisao Frank Koch koji preporučujemo da pročitate ako se ipak odlučite početi učiti skriptni jezik PowerShell. I naravno vlastiti sustav pomoći ljuske.

Snažan je i opsežan, s mnogo konkretnih primjera. Jednostavan je za korištenje. Osnovne informacije o sustavu pomoći prikazuje cmdlet Dobiti pomoć... Cmdlet navodi sve dostupne naredbe.

Vrhunski povezani članci