20 comenzile Windows PowerShell pe care trebuie să le cunoașteți
Windows PowerShell este noua shell-ul de linie de comandă, care este mai puternice și mai scriptabile decât Promptul de comandă. În cei trei ani de experiență în care am folosit-o, mi-am dat seama că este foarte util, mai ales dacă vă aflați în automatizarea sau sarcini de scripting. Cu toate acestea, cei mai mulți dintre noi nu știu sau nu preferă să-l folosească în locul vechii cochilii de linie de comandă.
În acest post, am de gând să împărtășesc comenzi clare și directe (cu exemple) de Windows PowerShell. Puteți utiliza aceste comenzi pentru a realiza numeroase sarcini - de la obținerea de asistență la pornirea proceselor. Sa incepem?
Notă: Windows PowerShell este construit cu back compatibility în minte, și astfel acceptă multe comenzi ale Promptului de comandă. Acestea fiind spuse, puteți continua să utilizați comenzile vechi în noua sa interfață colorată.
Ajutor [ajutor]
Dacă sunteți nou la PowerShell, puteți întâmpina probleme; și în astfel de situații, Get-Help devine salvatorul tău. Oferă informațiile necesare despre cmdleturi, comenzi, funcțiile, scripturile și fluxurile de lucru ale PowerShell-ului.
În plus, este ușor: trebuie să tastați Obține ajutor
urmată de comanda, din care, căutați detaliile. De exemplu, puteți obține informații despre “Get-proces” utilizând Get-Get Get-Process
.
Get-Command [gcm]
Windows PowerShell permite descoperirea comenzilor și a funcțiilor sale utilizând Get-Command. Afișează lista de comenzi ale unei caracteristici specifice sau pentru un anumit scop bazat pe parametrul dvs. de căutare.
Trebuie doar să tastați Get-comandă
urmată de interogarea de căutare din PowerShell. De exemplu, Get-Command * -service *
afișează comenzi cu “-serviciu” în numele său. Vă rog să vă amintiți utilizați asteriscurile de pe ambele părți ale interogării dvs. deoarece este un card sălbatic care ajută la căutarea necunoscutului.
Invocare-Comandă [icm]
Când doriți executați o comandă sau un script din PowerShell - la nivel local sau la distanță, pe computere unice sau multiple - “Invocați-comandă” este prietenul tau. Este ușor de utilizat și vă ajută să controlați loturile computerelor.
Trebuie să tastați Invocați-comandă
urmată de comanda sau scenariul cu calea sa completă. De exemplu, puteți executați o comandă “Get-Eventlog” utilizând Invoke-Command -ScriptBlock Sistemul Get-EventLog -Newest 50
sau pe un computer la distanță “Server01” utilizând Invoke-Command -ScriptBlock Sistemul Get-EventLog -Newest 50 -ComputerName Server01
.
Invoke-Expression [iex]
Invocați-Expression rulează o altă comandă sau expresie. Dacă furnizați o expresie sau un șir ca intrare, această comandă o evaluează mai întâi, apoi o execută, dar funcționează doar local, spre deosebire de comanda anterioară.
Trebuie să tastați Invocați-Expression
urmată de o comandă sau o expresie. De exemplu, puteți atribui o variabilă “$ comandă” cu un șir de comenzi “Get-proces”. Când alergi Invoke-Expression $ Command
, “Get-proces” se execută ca o comandă pe calculatorul local.
Invoke-WebRequest [iwr]
Poti descărcați, conectați-vă și sculați-vă pentru informații pe site-uri web și servicii web în timp ce lucrați pe Windows PowerShell folosind Invoke-WebRequest.
Trebuie să o utilizați Invocați-WebRequest
urmată de parametrii săi. De exemplu, puteți obține link-urile de pe o pagină web folosind comanda ca (Invoke-WebRequest -Uri "https://docs.microsoft.com") .Links.Href
.
Set-ExecutionPolicy
Deși crearea și executarea de scripturi (având extensia “PS1”) în Windows PowerShell este posibil; cu toate acestea, există restricții în scopuri de securitate. Dar tu poti comutați la nivelul de securitate utilizând comanda Set-ExecutionPolicy.
Puteți scrie Set-ExecutionPolicy
urmată de unul dintre cele patru niveluri de securitate - Restricționat, Semnat de la distanță, Toate semnate sau Nerestricționate pentru a utiliza comanda. De exemplu, puteți atribui starea politicii restricționate utilizând Set-ExecutionPolicy -ExecutionPolicy Restricted
.
Obțineți element [gi]
Dacă sunteți în căutarea informații despre un element în orice locație, spuneți un fișier pe hard disk, Get-Item este cea mai bună modalitate de achiziționare în Windows PowerShell. Trebuie să știți asta nu primește conținutul articolului, cum ar fi fișierele și subdirectoarele dintr-un director dat, cu excepția cazului în care vă specificați în mod explicit.
Trebuie să tastați Get-Articol
urmată de o cale sau de un șir împreună cu parametrii săi, dacă există. De exemplu, puteți obține toate elementele (fișierele sau folderele) începând cu “M” în directorul curent folosind Obțineți elementul M *
. Împreună cu conținutul de directoare, acesta poate obține, de asemenea, conținutul de chei de registry.
Copiați-articolul [copia]
Dacă ai nevoie să copiați fișierele și directoarele pe discurile de stocare sau intrările de registry și cheile din registry, puteți utiliza Copy-Item. Funcționează similar cu “cp” comanda pe care o avem în Command Prompt, dar este mult mai bună.
Puteți folosi Copy-Articol
comanda pentru copiați și redenumiți elemente din aceeași comandă precum și - dați un nou nume ca destinație. De exemplu, puteți copia și redenumi “Services.htm” la “MyServices.txt” utilizând Copiați articolul "C: \ Services.htm" -Destinație "C: \ MyData \ MyServices.txt"
.
Eliminați-articolul [del]
Daca doresti pentru a șterge elementele cum ar fi fișiere, foldere, funcții și chei de registry și variabile, Remove-Item este comanda pentru tine. Ceea ce mi sa părut interesant este că oferă parametri pentru a include și exclude articole.
Puteți folosi Eliminați-Articol
comanda pentru să ștergeți elemente din anumite locații folosind parametrii. De exemplu, puteți șterge fișierul “MyServices.txt” cu comanda Eliminați articolul "C: \ MyData \ MyServices.txt"
.
Obțineți-conținut [pisică]
Când aveți nevoie să vizualizați conținutul unui fișier text dintr-o anumită locație, deschideți-l și citiți-l într-un editor de cod / text ca Notepad ++. În Windows PowerShell, puteți utiliza Get-Content prelua conținutul fără a deschide fișierul.
De exemplu, puteți recupera 50 de linii de conținut “Services.htm”, atunci puteți folosi Obțineți conținut "C: \ Services.htm" -TotalCount 50
.
Setați-Conținutul [sc]
Puteți salva textul în fișiere utilizând Set-Content, similar cu “ecou” comanda Bash Shell. În combinație cu Get-Content, puteți, de asemenea prelua conținutul unui fișier și îl copiază într-un alt fișier folosind această comandă.
De exemplu, puteți tasta Set de conținut
la scrieți sau înlocuiți conținutul a unui fișier cu conținut nou. Mai mult decât atât, puteți să o faceți cu exemplul anterior al comenzii pentru a salva ieșirea într-un fișier nou numit “Sample.txt” utilizând Obțineți conținut "C: \ Services.htm" -TotalCount 50 | Setați conținutul "Sample.txt"
.
Obțineți-variabilă [gv]
Dacă doriți să utilizați variabile în Windows PowerShell, vă ajută să obțineți comanda Get-Variable vizualiza valorile variabilelor. Acestea le afișează într-o formă tabelară și permit includerea, excluderea și folosirea metacaracterelor.
Puteți utiliza această comandă tastând Get-Variabilă
urmată de opțiunile și parametrii acesteia. De exemplu, puteți extrage valoarea pentru o variabilă numită “desc” utilizând următorul cod: Get-Variable -name "desc"
.
Setare variabilă [setare]
Poti aloca sau modifica / reseta valoarea unei variabile utilizând comanda Set-Variable. Ca comandă rapidă, puteți seta și o variabilă simplă utilizând formatul $ $ VarName = VarValue $, cum ar fi $ desc = "O descriere"
.
Puteți folosi comanda Set-Variabilă
urmată de parametrii săi pentru a stabili o variabilă. De exemplu, putem seta valoarea unei variabile numite “desc” folosind comanda Setați -Variabilă -Name "desc" -Valură "O descriere"
.
Get-Process [gps]
De obicei, folosim Task Manager pentru a găsiți procesele care rulează pe calculatorul nostru. În Windows PowerShell, oricine poate folosi Get-Process pentru a obține lista proceselor în curs de execuție, pe care le puteți procesa în continuare.
Puteți scrie comanda ca Get-proces
împreună cu interogarea dvs. de căutare. De exemplu, dacă aveți nevoie de informații despre procesele cu “explora” în numele lor, puteți scrie Get-Process * explore *
(notați asteriscurile).
Start-Process [saps]
Windows PowerShell o face ușor începe unul sau mai multe procese pe calculatorul tau. Am constatat că această comandă este utilă în aplicațiile de scripting, deoarece este una dintre comenzile must-have de care ai nevoie pentru automatizarea unei sarcini.
Puteți scrie Start-proces
urmată de parametrii săi să folosească comanda. De exemplu, puteți porni Notepad tastând Start-Process -FilePath "notepad" -Arată de alergare
în Windows PowerShell.
Stop-Process [ucide]
Poti opriți anumite sau toate instanțele unui proces care rulează pe calculatorul dvs., utilizând numele său sau PID (Process ID), grație comenzii Stop-Process. Ceea ce o face convingătoare este că puteți detecta că un proces este oprit sau nu și puteți opri chiar procesele care nu sunt deținute sau pornite de utilizatorul curent.
Puteți tasta comanda Stop-proces
urmată de parametrii săi pentru a opri procesele date. De exemplu, puteți opri toate procesele din Notepad utilizând comanda Stop-Process-Numiți "notepad"
.
Get-Service [gsv]
Când ai nevoie informații privind anumite servicii (care rulează sau se oprește) de pe computer, puteți utiliza serviciul Get-Service. Acesta afișează serviciile instalate în sistemul dvs. și oferă opțiuni pentru filtrarea și includerea și excluderea acestora.
Dacă doriți să utilizați această comandă, puteți să tastați Get-Service
urmată de parametrii săi. De exemplu, tastați următoarele Get-Service | Unde-Obiect $ _. Status -eq "Rularea"
pentru a obține serviciile “alergare” pe sistemul dvs..
Start-Service [sasv]
Dacă doriți începeți un serviciu pe computer, comanda Start-Service vă poate ajuta să faceți același lucru din Windows PowerShell. Am descoperit că este suficient de puternic pentru a începe un serviciu, chiar dacă serviciul respectiv este dezactivat pe computer.
Trebuie să specificați numele serviciului în timp ce utilizați comanda Start-Service
. De exemplu, Start-Service-Numiți "WSearch"
începe serviciul “Căutare Windows” pe calculatorul local.
Stop-Service [spsv]
Dacă doriți stop servicii de funcționare pe computer, comanda Stop-Service se va dovedi de ajutor. Trebuie să specificați numele serviciului împreună cu Stop-service
. De exemplu, tastați Stop-Service-Numiți "WSearch"
pentru a opri serviciul “Căutare Windows” pe calculatorul tau.
ConvertTo-HTML
PowerShell poate oferi informații uimitoare despre sistemul dvs. Cu toate acestea, acesta este în mare parte prezentat într-un format indigestibil, dar puteți utiliza ConvertTo-HTML creați și formatați un raport să o analizați sau să o trimiteți cuiva.
Poți să folosești ConvertTo-HTML
împreună cu ieșirea unei alte comenzi utilizând tubulatura. De exemplu Get-Service | ConvertTo-HTML-Nume de proprietate, Status> C: \ Services.htm
afișează lista tuturor serviciilor și starea acestora sub forma unui raport web, care este stocat în fișier “Services.htm”.
E vorba de comenzile esențiale .