PowerShell Cmplets. Ce este Windows PowerShell și ce este necesar pentru ce

5 noiembrie 2014 la 20:07

Salt începe la PowerShell (Partea I)

  • Administrarea sistemului,
  • PowerShell.
  • Tutorial

Numai automatizarea. Numai PowerShell.

Prefaţă

Ca un hobby și în prezența timpului, îl învăț pe studenți la Ukit (fostul colegiu de stat din Moscova tehnologia Informatiei). Pe acest moment Am puțin timp să-i dau un grup de studenți, dar este suficient să pregătească un post aici pe Habré.

Lucrez ca administrator de sistem într-o companie mare, cu un șir mare pentru resurse IT. Prin natura activității pare să decidă un numar mare de Sarcinile serviciului utilizator.

Cu limbajul PowerShell, m-am familiarizat cu aproximativ doi ani în urmă, dar l-am luat cu atenție doar un an mai târziu, fără a realiza oportunitățile inițiale la început. În articolul, în primul rând, mă voi concentra pe cei care doresc să înceapă să lucreze cu PowerShell, dar până când îl încredințează sau nu știe cum să se apropie de acest miracol.

Atenție: PowerShell este dependență.

Introducere

Wikipedia ne spune:
Windows PowerShell - un mijloc extensibil de automatizare de la Microsoft.Constând dintr-o cochilie cu o interfață de linie de comandă și scripturi conexe.

PowerShell arată ca o linie de comandă:


powerShell.exe.

Sau sub forma unei aplicații:


powershell_ise.exe.

Powershell_ise.exe. Numit un mediu de scenariu integrat - Windows PowerShell ISE. Vă permite să lucrați cu o limbă într-un mediu evidențiat de sintaxă convenabil, Constructor de comandă, comenzi de autofill apăsând fila și alte farmece. Ideal pentru crearea și testarea scripturilor.

Pentru lansarea mediului powerShell.exe. sau powershell_ise.exe. Este suficient să formați un nume similar în rând.

Fișierul PowerShell Script are o extensie .PS1..

Scriptul nu va putea să ruleze dublu LKM. Acest lucru se face în mod specific pentru a nu dăuneca sistemului care rulează aleator.

Pentru a începe, făcând clic pe PCM, selectați "Rulați folosind PowerShell":

În plus față de faptul că există o limită a lansării scriptingului LKM, în mod implicit, execuția scenariilor în sistem este interzisă din nou, conform motivului descris mai sus - nu dăunează sistemului. Pentru a verifica politica actuală de execuție, vom executa comanda:

Obține-executarePolicy

Obținem una dintre următoarele valori. Cu mare probabilitate dacă a fost prima lansare, ajungem Restricționat.

  • Restricționat - scripturile nu pot fi lansate;
  • Als. - pot fi lansate doar scenarii semnate de editorul de încredere. Înainte de a efectua scenariul editorului de încredere va fi solicitat confirmarea;
  • Remotesigned. - a permis efectuarea scripturilor și scenariilor descărcate semnate de editorul de încredere;
  • Nerestricționat - Nu există restricții, toate scripturile pot fi lansate.

Să îndeplinească și să testeze politicile la Remotesigned. Prin comanda:

SET-ExecutionPolicy Remotesigned

Ajungând la muncă

Cmll.
  • Comenzile se numesc comenzi PowerShell, în care se pune diferite funcționalități;
  • Cupele pot fi atât de sistem, cât și personalizate create de oricine;
  • Catelurile se referă la regula Glagol-substantiv, care simplifică memoria lor;
  • Colile de ieșire rezultă sub formă de obiecte sau colecții lor;
  • Cmdlets pot primi ambele date pentru prelucrarea și transmiterea datelor pe conductă (despre transportoare mai târziu);
  • Cupele nu sunt sensibile la registru (puteți scrie și primi proces și primiți procesul și primirea);
  • După cmdleți, nu este necesar să puneți " ; ", cu excepția cazului în care efectuăm mai multe cmdleți într-o singură linie (obțineți proces-proces).

De exemplu, pentru a obține procese actuale, vom executa comanda:

Și obținem rezultatul:

Încercați să vă efectuați:

Get-service # pentru a obține starea serviciilor care rulează pe computere

Get-Content C: \\ Windows \\ System32 \\ Drivere \\ etc \\ Hosts # pentru a obține conținutul fișierului. ÎN acest caz, Dosarul găzduiește

Nu este necesar să știți toate cmdletele. Obține ajutor. Salvați situația.
Informațiile despre toate cmdlele disponibile pot fi obținute introducând următoarea comandă:

Get-Ajutor -Category Cmdlet

Dacă folosim PowerShell ISE, facilităm procesul de dezvoltare.
Doar introduceți un semn de bord " - "După ce a fost introdus Clarket, și vom obține totul opțiuni posibile Parametrii și tipurile lor:

Încercați să executați:

Get-service -name p *

Dacă, totuși, vom uita la ce proprietăți există de la unul sau la alt cmdle, o plimbăm Obțineți membru.:

Obțineți-procesul Obțineți-membru # semn "|" numit transportor. Despre el de mai jos.

Nu sunt suficiente informații? Întoarceți-vă la Ajutor cu parametrul -Examples.:

Get-Ajutor obține-proces-proces

Avem o descriere Obțineți-proces-proces.Da, și cu exemple de utilizare:

  • Catelurile pot avea nume abreviate - aliasuri. De exemplu, în schimb Obține ajutor. Puteți utiliza simplu Ajutor.. Pentru toate reducerile, efectuați Get-alias..

Încercați să executați:

Procesul de pornire notepad

Ce este similar cu înregistrarea:

Începeți notepad.

Și acum opriți procesul:

Stop-proces -name notepad

SPPS -NAME NOTEPAD.

Puțin mai devreme, am spus că colocele sunt numite regula Glagol-substantiv. Clarifică faptul că verbul nu trebuie să fie Obține.. În afară de ceea ce putem obține, putem întreba A STABILIT. (Amintiți-vă, setați-execuționați), lansați Start.oprire Stop., ieșire Out.Crea Nou și multe altele. Numele cmdletului nu se limitează la nimic și când ne vom crea cu dvs., îl putem numi ca inima voastră.

Să încercăm să executăm fișierul:

"Bună, hub!" | Fișierul Out-File C: \\ test.txt & C: \\ test.txt

Apropo, poate fi scrisă în același mod ca:

"Bună, hub!" \u003e C: \\ test.txt & c: \\ test.txt

Cu litere misterioase și cursor persistent intermitent? Aceasta este o linie de comandă. Utilitatea este prezentă în toate versiuni Windows.. Cu aceasta, este convenabil să gestionați sistemul, programe de apel, să găsiți fișiere. Dar pentru munca profesională CMD nu este suficient de funcțională. Prin urmare, Microsoft a decis să remedieze toate minusurile console și să elibereze produsul sub de numele ferestrelor PowerShell. Ce este și cum să utilizați dezvoltarea, citiți mai departe.

Ce este PowerShell de la Windows

PowerShell este un mediu de comandă interactiv orientat pe obiecte, cu funcții de limbă script. Eliberarea oficială a POWERSHELL 1.0 de la Microsoft a avut loc la 14 noiembrie 2006. Dezvoltatorii au combinat interfața liniei obișnuite de comandă CLI cu o platformă pentru gestionarea cadrului local și la distanță .NET.

Rețineți că PowerShell Windows nu este o coajă de operare simplă. Microsoft a reușit să creeze un instrument de control puternic, extensibil și, în același timp, un instrument de control flexibil, care este capabil să funcționeze ca un limbaj de scenariu selectat.

La 18 august 2016, Microsoft a anunțat că Windows PowerShell este acum un produs open source disponibil fiecărui dezvoltator. De asemenea, compania a adăugat suport pentru sistemele de operare orientate către Unix, inclusiv distribuțiile Linux și OS X.

Cum de a gestiona PowerShell

Cmdlets sunt folosite pentru a rula sarcini sau cmdlete. Acestea sunt comenzi mici înregistrate sub formă de fișiere executabile. În versiunea 2.0 PowerShell pentru Windows XP și Server 2008 R2, creatorii au adăugat module care vă permit să gestionați cantitate mare Resurse, inclusiv Active Directory și Server Exchange.

Acum, în instrumentul de automatizare PowerShell, peste 130 de module și comenzi sunt încorporate. Ele oferă acces la fișiere, rețele, registru, administrare și alte caracteristici ale sistemului:

  • stabilirea timpului și datele;
  • lucrați cu dosare și fișiere separate;
  • obținerea de asistență și informații suplimentare;
  • import și stocare de date;
  • metode de creare a scripturilor;
  • scripturi și aplicații individuale;
  • verificați sistemul de securitate și lucrați cu descriptori;
  • administrarea sistemului;
  • verificați spațiul pe disc.

Având în vedere că Windows PowerShell este un mediu extensibil, utilizatorii își pot crea propriile echipe, scrie module "autor" folosind o limbă .NET.

Noțiuni de bază cu PowerShell

În 2016, a fost lansată ultima versiune beta 6.0 PowerShell. În Windows 7, 8 și 10, utilitatea este încorporată. Dacă utilizați un alt sistem de operare, cererea va trebui să descărcați. Pentru a face acest lucru, accesați site-ul oficial al Microfoft.com și în fereastra Căutare, introduceți instalarea Windows PowerShell. Sistemul se va traduce automat în pagină cu cele mai recente versiuni de produse. Selectați sistemul de operare din listă și faceți clic pe Descărcare.

Când fișierul este încărcat complet, deschideți-l cu un click dublu de mouse. În mod implicit, mediul va fi instalat în programulFiles \\ PowerShell \\ și va crea o comandă rapidă în meniul Start. Dacă sunteți un utilizator Windows Happy, faceți clic pe pictograma de sistem din colțul din stânga jos și introduceți PowerShell pentru a "găsi programe și fișiere". Rulați aplicația, introduceți primul dvs. cmdlet și începeți să lucrați.

Lista comenzilor și instrucțiunilor necesare pentru PowerShell

Numele fiecărui cmdlet este reprezentat în forma "verb-substantiv" sau "obiect acțiune". Oferim o listă cu cele mai importante cmdlete PowerShell pentru Windows 10 și versiunile anterioareîncepând cu XP. Acestea vor fi utile chiar și pentru utilizatorii novici care tocmai au învățat cum să mențină documentele text.

  1. Obține ajutor. Construit în celulerul cuștii de bază. Concepute pentru a apela un certificat și oferă informatii utile Pe sintaxă, programe, numirea lor, alte celții. Dacă în interpretul obișnuit de comandă ați scris ipconfig / atunci apoi la PowerShell trebuie să formați obținerea procesului de obținere a ajutorului.
  2. Obțineți-conținut. Simplifică procedura de citire a fișierelor pentru începători și administratori de sistem. Dacă mai devreme a fost necesar să deschideți mânerul și să citiți toate liniile documentului, acum dați doar cmdletul de fișier. Pentru a face acest lucru, scrieți în C: \\\u003e Get-Content C: \\ ... "Nume fișier" în consola. "Extensie".
  3. Get-Service. Accesați informații despre serviciile instalate pe computer.
  4. Obțineți membru. Oferă informații despre obiectul Cmndlet returnat, vă permite să vedeți proprietățile și metodele sale.
  5. Obțineți-comandă. Căutări pentru cmdlets, returnează toate informațiile despre ele, inclusiv date despre funcții, scripturi, aplicații și alte elemente. În versiunea 5.0 PowerShell pentru Windows 10 în Bet-Command, a fost adăugată coloana versiune, iar acum comandanții afișează mai multe versiuni ale aceluiași modul simultan.
  6. STOP- \\ Start-Service. Un asistent indispensabil pentru administratori. CMDLET lansează și oprește serviciile pe computerele șterse și locale.

Simboluri speciale pentru scripturi

În plus față de cmdlets, utilitarul PowerShell în Windows 7 și de mai sus include caractere speciale, cum ar fi $ _ sau (). Cea mai mare perplexitate a icoanelor provoacă noii veniți care nu au avut cazul cu sisteme sau programare asemănătoare Linux.

  1. TRAIT vertical "|". Acest simbol este utilizat pentru programele cu transfer de date transportor. Când lucrați cu consola, acesta include când doresc să specifice comanda în partea dreaptă a caracteristicilor verticale pentru a accepta ieșirea din partea stângă. În PowerShell, caracteristica verticală este folosită de aproape același scop, combinând o dată mai multe echipe. De exemplu, creați un nou nume de utilizator, adăugați-l într-un grup și resetați parola implicită.
  2. Funcție semn "()". Vă permite să monitorizați în mod eficient procesul de execuție a scenariilor. Ca și în limbile de programare C, funcția PowerShell este formată prin intrarea în mai multe cmdlete în paranteze curbate și este gata să înceapă numărul de ori.
  3. Simbol special $ _. Folosit pentru a scrie blocuri de scripting, filtre și expresii procedurale. $ _ ia valoarea obiectului curent și o transmite la următoarele. Folosind semnul dolarului, fără o subliniere inferioară, puteți desemna sau introduce o variabilă: $ var \u003d "salut".

Ce este PowerShell ISE

Incluse în utilitarul PowerShell este un grafic aplicația Windows. PowerShell ISE. Aceasta este o coajă sau un mediu integrat pentru scrierea de scripturi. ISE oferă dezvoltatorilor o gamă largă de posibilități. Cu aceasta, puteți crea, deblude și edita scripturi, deschideți fișiere text și xml. Culoarea evidențiere a sintaxei facilitează în mare măsură testarea și căutarea erorilor în cod.

ISE este mult mai convenabil decât consola PowerShell și îl poate înlocui complet. Folosind mediul, puteți copia și introduceți fragmente de coduri mari, nu porniți tot scriptul, ci părțile sale separate. Spre deosebire de PowerShell, dimensiunea ferestrei din ISE schimbă cu ușurință indicatorul mouse-ului, ca atunci când lucrați cu programul obișnuit.

Pentru a încerca mediul ISE, introduceți PowerShell ISE în meniul Start. Dacă nu utilizați Windows, ci un alt sistem de operare, descărcați și instalați o distribuție de pe site-ul oficial. După pornirea aplicației, se va deschide o fereastră de trei părți. Scripturile de vârf sunt scrise în partea de jos - Echipele PowerShell, iar în mijloc există un rezultat.

Începeți cunoștința cu ISE și în fereastra inferioară, introduceți procesul de obținere. Apăsați pagina de mai multe ori. Alături de cmdletul va apărea parametrii să se schimbe după fiecare apăsare de tastă. Aceasta va fi prima dvs. sesiune cu un mediu de script de la Microsoft.

În mod similar, totuși, vă permite să efectuați comenzile obișnuite ale liniei de comandă pentru a crea un singur mediu în care administratorii ar putea efectua diferite sarcini pe sistemele locale și la distanță.

Aceste sarcini administrative sunt de obicei efectuate folosind cmdlete (în original cmdlets.), care sunt clase .NET specializate. Utilizatorul le poate combina în scripturi (scenarii) folosind diverse modele, utilități de linie de comandă și referindu-se la clasele normale .NET, WMI sau COM. În plus, puteți utiliza diverse depozite de date, cum ar fi sistemul de fișiere Windows sau Registry, care sunt furnizate de PowerShell prin furnizori (în engleză. furnizori).

Windows PowerShell oferă, de asemenea, un mecanism de încorporare, datorită cărora componentele executabile PowerShell pot fi construite în alte aplicații. Aceste aplicații pot utiliza funcționalitatea PowerShell pentru a implementa diferite operațiuni, inclusiv prin intermediul interfață grafică. Această abordare este aplicată la Microsoft Exchange Server 2007 pentru a implementa funcționalitatea de control sub formă de cmdle PowerShell și utilități de control grafic sub formă de cochilii PowerShell care determină cmdletele necesare. Astfel, interfața grafică de control este peste stratul intermediar - PowerShell. Alții aplicații Microsoft, Inclusiv Microsoft SQL Server 2008, managerul de operațiuni al Centrului de sistem și managerul de protecție a datelor centrului de sistem oferă, de asemenea, acces la interfețele de gestionare prin cmdletele PowerShell. În viitor, toate aplicațiile Microsoft Server platformă Windows. va folosi PowerShell într-un fel sau altul.

Windows PowerShell include propriul ajutor extensibil, disponibil (inclusiv din linia de comandă) prin cmdletul de ajutor.

Preistorie

Clelyt.

Scenarii

PowerShell include un limbaj de scenariu cu tipuri dinamice, pe care puteți implementa operații complexe folosind cmdlete. Limba scriptului suportă variabile, funcții, modele de ramură (dacă altele) (în timp ce, pentru și foreach), procesarea de erori structurate și multe alte caracteristici, inclusiv integrarea C.NET. Variabilele din PowerShell sunt notate cu $ prefix înainte de nume; Ele pot fi atribuite vreun sens, inclusiv retragerea cmdlets. Deși limba însăși nu este strict tipărită, în interiorul variabilelor sunt salvate cu tipurile lor care pot fi tipuri de bază (eng. tipuri primitive.) sau obiecte. Rândurile pot fi închise în ghilimele unice sau ghilimele duale: atunci când se utilizează ghilimele duble, variabilele conținute în șir vor fi înlocuite cu valorile lor. În conformitate cu sintaxa variabilelor, dacă calea către fișier este plasată în paranteze curbate cu un semn de dolar precedent (care este, $ (C: \\ Foo.txt)), atunci acesta va fi un link cu conținutul conținutului fișierul. Tot ceea ce va fi alocat unei astfel de variabile vor fi înregistrate în dosar, iar dimpotrivă, conținutul fișierului va fi emis la accesarea conținutului său.

Puteți gestiona proprietățile și metodele obiectului folosind punctul (.), Ca în sintaxa. PowerShell oferă variabile speciale, cum ar fi argumentele de $, conținând o serie de argumente de linie de comandă anonime, funcții transmise sau $ _, referindu-se la obiectul curent în transportor și alte structuri. PowerShell conține, de asemenea, matrice și matrice asociative. În plus, PowerShell calculează automat expresiile aritmetice introduse pe linia de comandă și înțelege abrigamentul popular, cum ar fi GB (GB), MB (MB) și KB (CB).

În PowerShell, puteți crea propriile funcții care acceptă parametrii utilizând funcția funcției. Problema populară pentru mulți începători este că funcțiile acceptă argumente separate de virgule, ci spații (cum ar fi utilitățile de linie de comandă sau cmdlete):

  1. : Cauze o funcție cu două argumente.

Aceste argumente pot fi legate de parametrii specificați în declarația funcției. De asemenea, ei pot contacta, de asemenea, printr-o matrice de $ args.

  1. (, ): Cauze o funcție cu un argument, care este o serie de două elemente.

PowerShell vă permite să apelați orice metode .NET prin încheierea numelor lor de spațiu în paranteze pătrate (), apoi folosind câteva culori (: :) pentru a indica metoda statică. De exemplu: Writeline ("PowerShell"). Obiectele sunt create folosind cmdletul de obiecte noi, adăugați proprietăți noi utilizând cmdletul add-membru.

Pentru manipularea erorii PowerShell oferă un mecanism bazat pe on-line. În caz de eroare, obiectele sunt emise care conțin informații de eroare (obiect excepțional) care sunt interceptate cuvânt cheie. Capcană. Cu toate acestea, comportamentul atunci când apar erori configurate. Deci, puteți configura PowerShell astfel încât, în cazul unei erori, a continuat în tăcere să execute fără a intercepta eroarea. A doua versiune a Powershell a adăugat, de asemenea, încercarea de captură în cele din urmă.

Scenariile scrise în PowerShell pot fi salvate între sesiuni în fișiere.ps1. Apoi puteți utiliza întregul script sau funcții individuale de la acesta. Scripturile și funcțiile sunt folosite ca CMDTAM, adică pot fi comenzi în transportor, pot transmite parametrii. Obiectele pot fi transmise între scenarii, funcții și cmdlete în transportor. Cu toate acestea, execuția scripturilor PowerShell este interzisă în mod implicit și trebuie să fie activată utilizând cmdletul de pompier set. PowerShell Script-uri pot fi semnate de o semnătură digitală pentru a-și verifica integritatea.

PowerShell 2.0

Microsoft a lansat PowerShell 2.0 ca parte a Windows 7 și Windows Server 2008 R2. Windows PowerShell 2.0 este presetată în aceste sisteme. Excepția este modul instalații Windows. Server 2008 R2 în modul Core, unde PowerShell 2.0 poate fi configurat manual. Pentru platformele mai vechi, este disponibilă ca parte a cadrului de management Windows. PowerShell 2.0 face unele modificări ale limbajului de scripting și API pentru încorporarea, în plus față de noul cmdth de 240.

Lista incompletă a noilor caracteristici incluse în PowerShell 2.0:

  • PowerShell Remoting. Folosind WS-Management, PowerShell 2.0 vă permite să apelați script-uri și cmdlete pe mașini de la distanță (inclusiv mai multe simultan), să monitorizeze starea executării acestora și să obțineți rezultate sub formă de obiecte (prin serializare - deterionizare). De asemenea, este posibil să se stabilească sesiuni și sesiuni interactive cu funcționalitate limitată.
  • Munca de fundal. Abilitatea de a apela secvența de comenzi asincron. Lucrările pot fi executate pe o mașină locală sau mai multe mașini la distanță. Lucrările nu pot utiliza cmdlete interactive.
  • Tranzacții. Permiteți dezvoltatorilor cmdlet-urilor și furnizorilor să implementeze operațiunile tranzacționale. PowerShell 2.0 include cmdlete pentru inițializare, confirmare și relansare a tranzacțiilor și capacitatea de a gestiona tranzacțiile și de a le utiliza în CMDT și furnizori.
  • Funcții avansate. Abilitatea de a dezvolta cmdlete cu drepturi depline folosind doar PowerShell în sine.
  • StepPablePipelines. Permite utilizatorului să monitorizeze funcțiile de încetare (), ProcessRecord () și Endprocessing () atunci când sunați la un cmdlet.
  • Module. Permiteți autorilor scenariilor și administratorilor să organizeze scripturi PowerShell și să le plaseze în module autonome. Codul din modulul se efectuează în contextul său independent și nu afectează mediul în afara modulului. Folosind scriptul, modulele pot declara un mediu limitat. Modulele pot conține funcții publice și private și variabile.
  • Limba de date. Un subset al limbajului PowerShell care vă permite să separați definițiile de date din codul de scenarii executabile și permite să importați șiruri localizate la script în timpul executării.
  • Scripturi de depanare. Abilitatea de a instala puncte de întrerupere (eng. puncte de întrerupere.) În scripturile sau funcțiile PowerShell. Punctele de întrerupere pot fi instalate pe șiruri de caractere, coloane, comenzi sau operații de citire și / sau variabile de înregistrare. Există cmdlete pentru instalarea și controlul punctelor de întrerupere în scenarii.
  • Evenimente. Această caracteristică vă permite să ascultați, să redirecționați și să efectuați acțiuni atunci când apare evenimentele de gestionare sau de sistem. Datorită evenimentului, gazda PowerShell poate fi informat despre modificările statutului obiectelor gestionate. De asemenea, permite scenariilor să se aboneze la Obiectivevents, Psevents și WMIEVENTS și le procesează sincron și asincron.
  • Windows PowerShell Integrated Mediu Scripting (ISE). PowerShell 2.0 include o coajă grafică pentru o limbă în care este inclusă debuggerul încorporat, lumina de fundal de sintaxă, automatizarea comenzilor. Shell vă permite să rulați mai multe console independente PowerShell cu sprijinul complet al Unicodelor în interfața cu marcaje. Datorită suportului executării la distanță, unele console pot fi efectuate pe alte computere. În plus, ISE vă permite să efectuați o parte alocată a scenariilor, conține un editor încorporat și vă permite să vă extindeți și să completați interfața folosind PowerShell.
  • BITS Transfer - suport încorporat pentru transferul de fișiere pe o rețea cu prioritizare, multithreading, reluări și lucrări asincrone bazate pe tehnologia serviciului de transfer inteligent de fundal.
  • Multe cmdleturi noi, inclusiv, de exemplu, Out-GridView, ceea ce face posibilă afișarea rezultatelor transportorului într-o masă grafică (bazată pe WPF), cu capacități de sortare și căutare instantanee.
  • Operatori noi --Plit, -join și operator de substituire (@).
  • Erori de procesare cu încercare-captură-în cele din urmă. Spre deosebire de alte limbi .NET, în PowerShell puteți specifica mai multe tipuri de excepții pentru un bloc de captură.
  • Blocați comentariile. PowerShell 2.0 suportă comentarii bloc (plus la linia deja existentă #) folosind<# и #> ca limitare.
  • API-urile noi au adăugat diferite capabilități, de la un control mai mare asupra parserului PowerShell la capacitatea de a crea sesiuni limitate (engleză. restricția de rulare restricționată.) În care puteți efectua doar un set limitat de instrucțiuni și comenzi PowerShell.

Compararea cmdlets cu echipe similare

Tabelul următor conține un eșantion de cmdlete furnizate împreună cu PowerShell, cu comenzile maxime similare din alte cochilii de linie de comandă cunoscute.

Trebuie remarcat faptul că acest tabel este dat pentru familiarizarea superficială, nu acoperă toate caracteristicile celor reprezentate de cochilii.

Windows PowerShell
(Cmdlet)
Windows PowerShell
(Alias)
cmd.exe / comanda.com.
(MS-DOS, Windows, OS / 2 etc.)
Bash.
(Unix, BSD, Linux, Mac OS X etc.)
Descriere
Obțineți-o locație gl, pwd. pwd. Afișează directorul de lucru curent
Set-locație sL, CD, CHDIR , Chdir. Modifică catalogul curent
Clear-gazdă. cLS, Desigur cLS. clar Șterge ecranul
Articol de copiere. iPC, copie, cp copie. Copiază unul sau mai multe fișiere sau directoare (în PowerShell puteți copia, de asemenea, obiecte ale altor furnizori de date)
Obține ajutor. ajutor, omule. ajutor. om. Ajutor de echipe
Eliminați-un element. ri, Del, Erase, Rmdir, Rd, RM del, șterge, rmdir, , Rmdir. Șterge fișierul / directorul (sau alt element la furnizorii de date PowerShell).
Rename-element. rNI, Ren. ren, redenumiți. Redenumirea fișierului / directorului
Mutați-un element. mi, mutați, mv mișcare. Mută \u200b\u200bfișierul / directorul într-o locație nouă
Obțineți-copilul. gCI, DIR, LS dir. Afișează toate fișierele / directoarele din directorul curent
Scriere-ieșire. echo, scrie. ecou. ecou. Afișează șiruri de caractere, variabile pentru ieșirea standard
Pop-locație popd. popd. popd. Modifică directorul curent la cel care a fost plasat ultima dată în stivă
Push-locație. Împingere. Împingere. Împingere. Plasează directorul curent pe stivă
Set-variabil. sV, set. a STABILIT. a STABILIT. Setarea valorii variabilei / creării variabilei
Get-Content gc, tip, pisică tip pisică. Obține conținutul fișierului
Selectați șirul. găsiți, Findstr. grep. Afișează șirurile adecvate în condiții
Obțineți-proces-proces. gPS, PS. tlist, lista de activități. Afișează toate procesele de funcționare
Procesul de oprire. sPPS, Kill. kill, Taskkill. ucide Oprește un proces de funcționare
Tee-obiect. tee. n / A. tee. Trimite date de intrare într-un fișier sau variabil, apoi le transmite mai departe de transportor

Vezi si

  • PowerShell ISE.

Notează

Literatură

  • Popov a.V. Introducere în Windows PowerShell. - St.Petersburg. : BHV-Petersburg, 2009. - P. 464. - ISBN 978-5-9775-0283-2

Link-uri

  • Windows PowerShell 1.0 Pachet de instalare Centrul de descărcare pentru Windows Vista
  • Raport privind oportunitățile PowerShell și Script Scrierea Fundamentelor
  • Cadrul de management Windows (inclusiv PowerShell 2.0, Winrm 2.0 și BIT 4.0) pentru Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008
  • Blog "PowerShell și alte scripturi" (Rus.)
  • (rus.)
  • "PowerShell blog și nu numai" (Rus.)
  • Cartea liberă rusă O PowerShell (Rus.)
  • A doua carte engleză gratuită despre PowerShell (engleză)
  • Windows PowerShell Web Nod (engleză)
  • PowerShell Căpitan și Administrația viitorului (Rus)

Windows PowerShell este unul dintre instrumentele importante din sistemul de sistem administrator Windows.. PowerShell este un instrument puternic care nu ar trebui neglijat. Acest articol urmărește să ofere abilități de lucru de bază cu Windows PowerShell.

PowerShell este ceva mai mult decât o coajă de linie de comandă. Prima versiune a PowerShell a apărut în 2006, motivul dezvoltării sale a fost primitivitatea echipei clasice windows Strings.nu este permis să efectueze algoritmi complexi.

Windows PowerShell este presetată în sistemele Windows 7, 8, 8.1 și Windows Server 2008 R2, 2012 R2 și pot fi, de asemenea, adăugate la Windows XP SP3, Vista și Windows Server 2003 SP2. Interfața PowerShell seamănă cu o interfață bine cunoscută de linie de comandă.


Interfața Windows. PowerShell.

Așa cum am menționat mai sus, interfața liniei de comandă nu este limitată. PowerShell oferă limbajul scenariului propriu al administratorului sistemului, care vă permite să automatizați acțiuni complexe.

Comenzile care rulează în PowerShell pot fi sub formă de cmdle, funcții, scripturi și fișiere externe externe.

Clelyt. - Acesta este un nou tip de comenzi construite în PowerShell. Comenzile de acest tip sunt compilate în bibliotecile DLL și sunt încărcate la procesul PowerShell în timpul lansării sale. Pentru ele însele cmdleți ca aplicații nu pornesc.

Numele cmdlets se potrivesc cu șablonul "Verb-substantiv". Verbul descrie acțiunea pe care vrem să o facem și substantivul - obiectul că va fi efectuată acțiunea. De exemplu, pentru a șterge ecranul consolei, trebuie să introduceți comanda Clear-Host. Puteți vizualiza comenzile disponibile introducând consola de comandă.

Cupele pot avea parametri. În general, se pare că:

numele de comandare -Parameter1 -PARAMETER2 argument1 argument2

Argumentele nu sunt parametri de nume.

Cum functioneaza? De exemplu, avem o comandă DIR care afișează conținutul directorului.

Exemplul echipei DIR

Să presupunem că am pierdut un fișier specific. Lăsați-l să fie un fișier de certificat de Photoshop. Îmi amintesc exact că numele fișierului conține "Photoshop" și că acesta este un fișier PDF. După cum îmi amintesc, fișierul se află în acest director. Pot afișa o listă a tuturor fișierelor de directoare ca în exemplul de mai sus și căutați manual fișierul. Și pot aplica parametrul -Filter, care va afișa numai acele fișiere care se potrivesc cu un argument specific. Ca argument va fi * Photoshop * .pdf. Asterisks în jurul cuvântului "Photoshop" stau pentru că nu-mi amintesc numele exact al fișierului și pointing PowerShell la faptul că înainte și după "Photoshop" poate suporta caractere. De asemenea, subliniez să caut fișierul PDF.

Deci, fișierul de căutare a fost găsit. În forma generală de cmdleți, a fost desemnată că un cmdlet poate avea mai mulți parametri. La rândul său, parametrii nu au întotdeauna argumente.

Un pic complică exemplul nostru. Să spunem acum că trebuie să găsesc cartea lui Christopher Dugursty. Echipă dir -filter * dougherty * .pdf Nu am făcut nimic. Aceasta înseamnă că nu există cărți în acest catalog, dar îmi amintesc exact că este undeva aici, evident, în subdirectoare. Pentru a căuta și în subdirectoare, adăugați parametrul -r.

Căutarea va dura ceva mai mult, dar cartea dorită va fi găsită.

După cum puteți vedea, parametrul -Recus nu conține un argument. Prin ei înșiși, parametrii pot sta în orice ordine, principalul lucru este să respectați pe deplin logica când argumentul necesar urmează parametrului pentru care este destinat. Deci, echipa dir -filter * dougherty * .pdf -Recus va lucra în același mod ca și dir -Recus -Filter * Dougherty * .pdf.

Numele parametrilor pot fi scrise în forma abreviată, care este destul de convenabilă pentru munca de zi cu zi cu linia de comandă. Reducerea ar trebui să fie clară pentru interpriter, adică Nu permiteți interpretări duble. De exemplu, parametrul -Recus poate fi redus la simpla -R, iar reducerea -filter la -f va provoca o eroare, deoarece Există încă un parametru forum. În acest caz, puteți tăia-Filter la-Vi.

Deci, avem o idee de celții. Următorul .

După mutarea la sistemul de operare Windows 10, mulți utilizatori au observat "PowerShell-ul de execuție" în interfața dirijoare. În acest sens, au apărut o mulțime de întrebări în rețea, utilizatorii interesați de programul Windows PowerShell și pentru ce este necesar. Dacă sunteți, de asemenea, interesați de această întrebare, acest material trebuie să vă ajute.

Windows PowerShell este un limbaj de scripting și un program cu o interfață de linie de comandă pentru a efectua aceste scripturi. Această limbă a fost lansată în 2006 ca parte a celui de-al doilea pachet de servicii pentru Windows XP și de atunci PowerShell face parte din toate sistemele de operare Microsoft. În 2008, a apărut cea de-a doua versiune din această limbăȘi începând cu Windows 7 este. Scripturile Windows PowerShell au extensia PS1 și pot fi lansate ca fișiere BAT și CMD familiare.

Windows PowerShell este un limbaj de scripting dezvoltat în primul rând pentru clienții Microsoft Business care au nevoie de instrumente puternice pentru a automatiza sarcinile de gestionare a serverului și calculatoarele baza de date Windows.. Baza pentru această limbă a fost utilizată de Platform.net, dezvoltată de Microsoft din 2002.

Windows PowerShell vă permite să automatizați o mulțime de varietăți de sarcini. Cu aceasta, puteți gestiona fișiere, servicii, procese, conturi și setări. PowerShell Limba înțelege mai multe echipe din obișnuite Linie de comanda Windows (CMD), dar are, de asemenea, propria sa limbă constând din propriile sale comenzi, care sunt numite celți aici.

Cupele (în cmdletele englezești) sunt formate din regula Glagol-substantiv, de exemplu, obțineți ajutor. Vă puteți familiariza cu elementele de bază ale PowerShell Windows folosind ajutorul (Camdlet Get-Help). Pentru a obține informații generale, introduceți pur și simplu comanda "Get-Help", introduceți "Get-Heln-Name-Cmdlet" pentru a primi un cmdlet specific. De exemplu, dacă introduceți comanda "Get-Ajutor Get-Process", atunci vom primi un ajutor CMot de proces.

Cum de a rula un program Windows PowerShell

Programul Windows PowerShell poate fi lansat căi diferite. Cea mai ușoară opțiune este să utilizați pur și simplu căutarea în meniul Start. Pentru a face acest lucru, deschideți meniul Start, introduceți search Query. "Windows PowerShell", după care deschideți programul găsit.

De asemenea, puteți utiliza o combinație cheile Windows-R Și introduceți comanda "PowerShell".

În Windows 10, programul PowerShell poate fi rulat din orice folder. Pentru a face acest lucru, faceți clic pe butonul "Fișier" din colțul din stânga sus al conductorului și selectați "Rulați Windows PowerShell".

Cum se utilizează Windows PowerShell

După cum am spus, cu ajutorul programului PowerShell, multe sarcini de rutină pot automatiza sistem de operare Ferestre. De exemplu, vom demonstra unele dintre caracteristicile pe care posedă acest instrument, pentru a deveni clar cum să îl utilizați.

Coș de curățare. Există un cmdlet special pentru a curăța coșul, numit "Clear-Recyclebin". Acest cmdlet este util atunci când scrieți script-uri pentru a menține calculatoarele. La executarea unui cmdlet, trebuie să specificați discul pe care doriți să ștergeți coșul. Exemplu:

Clear-Recyclebin C:

În captura de screenshot mai jos, se poate observa cum se efectuează acest cmdlet. După introducerea comenzii "Clear-Recycicin C:", apare o solicitare de confirmare. Pentru a continua execuția cmdletului, trebuie să introduceți litera "y" și apăsați Enter.

Dacă adăugați "-Force" la Cmdlet "Clear-Recyclebin C:", atunci curățarea coșului este efectuată fără o solicitare de confirmare. Screenshot în partea de jos.

Arhivarea fișierelor. Pentru arhivarea și despachetarea fișierelor, sunt furnizate cmdlete de arhivare și arhivă de expandare. De exemplu, pentru a arhiva dosarul "C: \\ test \\" la arhiva "C: \\ Arhiva \\ test2.zip" Trebuie să executați următorul cmdlet:

Comprimă-arhivă -Literalpath C: \\ Test \\ -DestinațiePath C: \\ Arhive \\ Test2.zip

Ca rezultat al executării comenzii de mai sus, fișierul "Test2.zip" apare în folderul "C: \\ Archive \\" în care va apărea conținutul dosarului C: \\ Test \\.

Lista de cmdlets pentru Windows PowerShell

Pentru Windows PowerShell, există un număr mare de cmdlete diferite și descrie-le pe toate într-un singur articol nu va funcționa. Prin urmare, vă sugerăm să vă familiarizați cu cele mai căutate:

  • GET-HELP - primirea referințelor;
  • Actualizare-Ajutor - Refresh Reference;
  • Obțineți-comandă - Căutați cmdlets;
  • Get-alias - Căutați pseudonime pentru cmdlete;
  • Get-PSDrive - Vizualizați discurile conectate;
  • Obțineți-membru - vizualizarea proprietăților și metodelor care au un obiect;
  • Get-WindowsFeature - Vizualizați informații despre roluri disponibile și componente ale serverului;
  • Instalarea-WindowsFeature (Analog Add-WindowsFeature) - Setează rolurile sau componentele la serverul dorit;
  • Dezinstalarea ferestrei (analogul de eliminare-WindowsFeature) - elimină componenta rolului sau serverului;
  • Get-Istoric - Vizualizați istoria echipelor introduse în această sesiune;
  • Get-variabil - vizualizați lista variabilelor și valorile acestora;
  • Noua variabilă - crearea unei noi variabile;
  • Set-variabil - setarea valorii variabilei;
  • Clear-variabil - eliminarea valorii variabile;
  • Eliminați-variabila - eliminarea variabilei și a valorilor acestuia;
  • Lista de format - Vizualizați rezultatul comenzii ca o listă de proprietăți, unde în fiecare linie o proprietate separată;
  • Format-table - vizualizați rezultatul comenzii în formatul tabelului;
  • Format - vizualizați rezultatul comenzii sub forma unei mese largi, în care este prezentată o singură proprietate pentru fiecare obiect;
  • Format-Custom - Vizualizați rezultatul comenzii utilizând vizualizarea utilizatorului;
  • Export-CSV - Export de date în format CSV;
  • Import-CSV - Datele de import dintr-un fișier CSV;
  • Export-Clixml - Export date în format XML;

Puteți obține o listă completă de cmdlets pentru Windows PowerShell, rulând Cacddlet-ul de comandă-comandă -Commandtype Cmdlet.