Fuskblad för Windows PowerShell-kommandon

Om du är en avancerad Windows-användare vet och förstår du förmodligen hur olika operationer på din dator kan ha mer än bara ett tillvägagångssätt och att specialiserade GUI-appar ofta är mer begränsande (och mindre tillfredsställande, låt oss vara ärliga) än att mata in kommandon i en kommandorad manuellt. Det är bara den där känslan av tillfredsställelse när du ser att väggen av text vecklas ut framför dig, och om resultatet inte är ett fel, gör det det desto mer värt.

På Windows-datorer finns det bara två sätt att uppnå detta: genom CMD eller PowerShell. Även om CMD är lite mer populärt än PowerShell, är det också mindre kraftfullt, med tanke på att dess motsvarighet låter dig utföra mycket fler operationer, inklusive sådana som du kan köra genom CMD. Man kan säga att PowerShell kombinerar kraften i den gamla CMD med skript- och cmdlet-förmågor, vilket ger dig en uppsjö av möjligheter angående operationer du kan utföra med den.

Men det stora antalet möjliga operationer du kan utföra genom att använda PowerShell kan vara ganska skrämmande även för erfarna användare, för att inte tala om användare som aldrig hört talas om CMD (för att inte tala om PowerShell) tidigare. Men oroa dig inte, vi ska försöka lära dig några enkla knep som du kan göra med PowerShell och kanske till och med memorera i det långa loppet. Även om denna ”kraschkurs” inte kommer att fungera som en heltäckande manual för PowerShell, kommer den förhoppningsvis att hjälpa dig att hitta runt PowerShell genom att ge dig några tips och förklara en massa kommandon. Om du är redo, låt oss börja.

Vad är PowerShell?

Som vi kort har nämnt ovan är PowerShell ett kraftfullt verktyg som du kan använda för ett stort antal operationer. Mer än så är PowerShell en uppgiftsautomatiseringslösning som omfattar flera kraftfulla verktyg under huven, inklusive men inte begränsat till ett kommandoradsskal (som CMD), ett skriptspråk samt ett ramverk för konfigurationshantering.

Till skillnad från andra skal som bara kan acceptera och returnera text, kan PowerShell också acceptera och returnera .NET-objekt tack vare den enastående mängden funktioner som den omfattar. Några av de viktigaste skalrelaterade funktionerna i PowerShell är följande:

Kommandoförutsägelse och flikkomplettering
Stöd för parametrar och kommandoalias
Omfattande kommandoradshistorik
Möjligheten att kedja kommandon genom pipeline
Ett hjälpsystem i konsolen som liknar man-sidor i Unix-baserade system

Det är dock bara att skrapa toppen av isberget eftersom, som vi har nämnt tidigare, PowerShell är mer än bara ett skal; du kan använda det som ett kraftfullt skriptspråk för att automatisera systemhanteringsoperationer, men också om du vill bygga, analysera, testa och distribuera lösningar i olika miljöer.

Med tanke på att PowerShell är baserat på .NET CLR (.NET Common Language Runtime), är det lätt att se varför alla in- och utgångar som PowerShell arbetar med är .NET-objekt. Dessutom finns det absolut inget behov av att analysera textutdata bara så att PowerShell kan extrahera information från den. Bland PowerShells skriptfunktioner du [month] hitta följande:

Ett omfattande formateringssystem som säkerställer en ren, enkel utskrift
Skapa dynamiska typer genom ett omfattande typsystem
Du kan utöka PowerShells kapacitet genom klasser, funktioner, moduler och skript
Inbyggt stöd för olika dataformat, inklusive XML, JSON och CSV

Om du är mer intresserad av att hantera och konfigurera din företagsinfrastruktur genom kod, kommer du att bli glad att veta att PowerShell också erbjuder dig denna möjlighet genom dess Desired State Configuration (DSC) hanteringsramverk. Bland de operationer du enkelt kan utföra genom att använda PowerShells DSC, påminner vi dig om:

Implementera olika konfigurationsscheman genom att använda antingen push- eller pull-modeller
Designa anpassade skript och deklarativa konfigurationer som du kan använda för repeterbara distributioner i din miljö
Genomför olika konfigurationsscheman
Rapport om konfigurationsavvikelse

PowerShell har en proprietär kommandorad som kommer med ett proprietärt programmeringsspråk som liknar Perl. Notera att PowerShell i början utvecklades för att hjälpa användare att hantera objekt på sina datorer, men som du kan förstå har det kommit långt och används nu för mer omfattande, komplexa jobb.

Du kan till exempel använda PowerShells omfattande arbetsmiljö för att inte bara utföra olika systemhanteringsoperationer utan också för att automatisera dem så att du inte behöver engagera dig i tråkiga, repetitiva uppgifter då och då. Det är också ganska viktigt att nämna att du kan komma åt en uppsjö av resurser genom bara ett program (dvs. PowerShell), inklusive, men inte begränsat till:

Windows Management Instrumentation
.NET Framework API
Kommandotolken
Windows-komponentobjektmodell
PowerShell-kommandon

Nuförtiden är ett av PowerShells mest populära syften att hjälpa slutanvändare att automatisera systemhanteringsuppgifter och på så sätt hjälpa dem att undvika att delta i en serie tråkiga, repetitiva operationer. Att eliminera den mänskliga faktorn från repetitiva handlingar har visat sig öka effektiviteten och minska mänskliga fel på grund av olika anledningar, så det är verkligen en win-win för alla.

Du kan använda PowerShell för att utfärda enkla eller mer komplexa kommandon, men det här programmet kan också hjälpa dig att skapa skript baserat på dessa kommandon, som körs automatiskt av PowerShell. Dessutom finns det en enastående mängd kommandon du kan anpassa och utfärda efteråt som kallas cmdlets.

Det är värt att nämna att PowerShell är plattformsoberoende och med öppen källkod, vilket innebär att du också kan använda det på andra system som Mac eller Linux, utan att ta till knep och kompatibilitetsförbättrande verktyg som Wine eller Boot Camp.

Lista över grundläggande PowerShell-kommandon

Vi förstår att PowerShell [month] känns lite skrämmande, speciellt nu när du har upptäckt att det är mer än bara ytterligare en kommandotolk på din dator, och den omfattar faktiskt CMD-funktioner, men också ett specifikt programmeringsspråk och olika skript du kan använda för att automatisera systemhanteringsoperationer.

Men om du känner dig fast besluten att behärska PowerShell och allt det har att erbjuda, rekommenderar vi starkt att du börjar med dess mest grundläggande funktioner. På så sätt behöver du inte rulla tillbaka på månader av framsteg när du har upptäckt att du av misstag använde fel funktion och allt arbete du har utfört under tiden börjar likna mer som ett avlägset minne.

Det är just därför vi har förberett en lista med grundläggande kommandon som du säkert kan använda i dina PowerShell-sessioner för att testa det här kraftfulla programmets funktioner och se vilken som gör exakt vad. Listan nedan innehåller kommandonamnen, deras alias och en kort beskrivning av vad varje kommando gör.

Observera att du kan använda antingen kommandonamn eller deras alias, och resultatet blir exakt detsamma. Anledningen till att man skulle föredra att använda alias är att de är mycket snabbare att skriva och om du kan komma ihåg dem korrekt och associera dem med deras motsvarande kommandonamn, är det mer meningsfullt om du vill få jobbet gjort snabbt.

Kommandonamn
Alias
Beskrivning
Lägg till innehåll
ac
Låter dig lägga till innehåll (t.ex. ord eller data) till en fil
Add-PSSnapIn
asnp
Hjälper dig att lägga till flera Windows PowerShell-snapin-moduler till
nuvarande session
Klart innehåll
clc
Rensar innehållet i ett objekt utan att ta bort det faktiska objektet
Rensa historik
clhy
Rensar alla poster från kommandohistoriken
Rensa-värd
klar
Rensar värdprogrammets display
Rensa-värd
cls
Gör samma sak som tydlig
Clear-Item
cli
Tar bort innehållet i ett objekt utan att ta bort det faktiska objektet
Clear-ItemProperty
clp
Torkar en fastighets värde utan att faktiskt ta bort själva egendomen
Klar-Variabel
clv
Tar bort en variabels värde
Jämför-objekt
jämföra
Låter dig jämföra två uppsättningar objekt
Jämför-objekt
diff
Gör samma sak som att jämföra
Anslut-PSSession
cnsn
Låter dig återansluta till sessioner du har kopplat från
Konvertera-sökväg
cvpa
Låter dig konvertera en Windows PowerShell-sökväg till en Windows
PowerShell-leverantörssökväg
Copy-Item
kopiera
Hjälper dig att kopiera ett objekt från en specifik plats till en annan
Copy-Item
cp
Gör samma sak som att kopiera
Copy-Item
cpi
Gör samma sak som copy och cp
Copy-ItemProperty
cpp
Låter dig kopiera ett värde och en egenskap från en given plats till en
en annan
Inaktivera-PSBreakpoint
dbp
Hjälper dig att inaktivera brytpunkter i den aktuella konsolen
Koppla från-PSSession
dnsn
Kopplar bort dig från den aktuella sessionen
Aktivera-PSBreakpoint
ebp
Låter dig aktivera brytpunkter i den aktuella konsolen
Enter-PSSession
etsn
Hjälper dig att starta en interaktiv session med en fjärrenhet
Avsluta-PSSession
exsn
Avslutar en interaktiv session med en fjärrenhet
Export-alias
epal
Låter dig exportera information om alias som för närvarande är definierade
till en utdatafil
Export-Csv
epcsv
Låter dig konvertera objekt till flera kommaseparerade (CSV)
strängar och exporterar strängarna till ett CSV-dokument
Export-PSSession
epsn
Importerar kommandon från en annan session och exporterar dem till en
Windows PowerShell-modul
För varje objekt
%
Utför en specifik operation mot var och en av de ingående föremålen
i en samling ingångsobjekt
För varje objekt
för varje
Gör samma sak som %
Format-Custom
fc
Hjälper dig att använda en anpassad vy för att formatera utdata
Format-lista
fl
Låter dig formatera utdata som en egenskapslista där varje egenskap
placeras på en ny linje
Format-tabell
med
Låter dig formatera utdata som en tabell
Formatbred
fw
Hjälper dig att formatera objekt som breda tabeller där endast en egenskap av
varje objekt visas
Get-Alias
tjej
Hämtar dina alias för din nuvarande session
Get-ChildItem
dir
Hämtar en lista över alla filer och mappar på en filsystemsenhet
Get-ChildItem
gci
Gör samma sak som dir
Get-ChildItem
ls
Gör samma sak som dir och gci
Hämta-kommando
gcm
Hämtar en lista över alla kommandon du kan använda
Get-Content
katt
Visar innehållet i en fil
Get-Content
gc
Gör samma sak som katt
Get-History
ghy
Hämtar en lista över alla kommandon du angav under din nuvarande session
Get-History
h
Gör samma sak som ghy
Get-History
historia
Gör samma sak som ghy och h
Get-Item
gi
Låter dig hämta filer och mappar
Get-ItemProperty
gp
Hämtar egenskaperna för objektet du angav
Få jobb
gjb
Hämtar en lista över alla Windows PowerShell-bakgrundsjobb som finns
körs för närvarande i din session
Get-Location
gl
Hämtar information om din nuvarande platsstack eller arbetsplats
Get-Location
pwd
Gör samma sak som gl
Bli medlem
gm
Hämtar alla egenskaper och metoder för specificerade objekt
Hämta-modul
gmo
Hämtar en lista över importerade moduler eller moduler som kan importeras till
nuvarande session
Get-Process
gps
Hämtar en lista över alla processer som körs lokalt eller på en fjärrkontroll
dator
Get-Process
ps
Gör samma sak som gps
Skaffa-PSBreakpoint
gbp
Hämtar alla brytpunkter som ställts in i din nuvarande session
Get-PSCallStack
gcs
Visar din nuvarande samtalsstack
Skaffa-PSDrive
gdr
Hämtar enheterna i din nuvarande session
Get-PSSession
gsn
Hämtar en lista över lokala och fjärranslutna Windows PowerShell-sessioner
Skaffa-PSSnapIn
gsnp
Hämtar en lista över alla Windows PowerShell-snapin-moduler på datorn
Get-Service
gsv
Listar alla tjänster på en lokal eller fjärrdator
Get-Unique
gu
Hämtar unika objekt från en sorterad lista
Get-Variable
gv
Visar en lista över alla variabler i den aktuella konsolen
Get-WmiObject
gwmi
Hämtar klasser för Windows Management Instrumentation (WMI).
instanser eller information om tillgängliga klasser
Grupp-objekt
grupp
Låter dig gruppera objekt som innehåller samma värde för egenskaperna
som du anger
hjälp
man
Visar mer information om Windows PowerShell-kommandon och
begrepp
Import-alias
ipal
Låter dig importera en lista med alias från en fil
Import-Csv
ipcsv
Bygg tabellliknande anpassade objekt med alla objekt som finns i
en CSV-fil
Import-modul
ipmo
Importera moduler till din nuvarande session
Import-PSS sion
ipsn
Importerar kommandon från en annan session till din nuvarande session
Anropa-kommando
icm
Låter dig utföra kommandon på lokala och fjärrdatorer
Invoke-Expression
iex
Låter dig utföra kommandon eller uttryck på den lokala datorn
Invoke-Historia
ihy
Utför kommandon från din sessionshistorik
Invoke-Historia
r
Gör samma sak som ihy
Invoke-Item
ii
Utför standardåtgärden på ett angivet objekt
Invoke-RestMethod
irm
Skickar antingen en HTTP- eller en HTTPS-förfrågan till en RESTful webbtjänst
Invoke-WebRequest
ringla
Hämtar innehåll från en webbsida på Internet
Invoke-WebRequest
iwr
Gör samma sak som curl
Invoke-WMIMetod
iwmi
Låter dig anropa Windows Management Instrumentation (WMI)
metoder
Mått-Objekt
mäta
Bestämmer numeriska egenskaper för objekt, såväl som ord,
linjer och tecken i strängobjekt
mkdir
md
Skapar ett nytt objekt (katalog)
Flytta objekt
mi
Låter dig flytta ett objekt från en specifik plats till en annan
Flytta objekt
flytta
Gör samma sak som mi
Flytta objekt
mv
Gör samma sak som mi och flytta
Move-ItemProperty
smp
Låter dig flytta en fastighet från en specifik plats till en annan
Nytt alias
nal
Låter dig skapa ett nytt alias
Nytt föremål
ni
Låter dig skapa ett nytt objekt
Ny-modul
nmo
Genererar en ny dynamisk modul som bara finns i minnet
Ny PSDrive
montera
Låter dig skapa tillfälliga och beständiga mappade nätverksenheter
Ny PSDrive
ndr
Gör samma sak som att montera
Ny-PSSession
nsn
Upprättar en beständig anslutning till en lokal eller fjärrdator
Ny-PSSessionConfigurationFile
npssc
Skapar en sessionskonfigurationsfil
Ny-variabel
nv
Låter dig skapa en ny variabel
Out-GridView
ogv
Låter dig skicka utdata till en interaktiv tabell i ett separat fönster
Ut-värd
åh
Skickar utdata till kommandoraden (CMD)
Utskrivare
lp
Låter dig skicka utdata till en skrivare
Pop-Location
popd
Ändrar din nuvarande plats till den plats som skickades till
stack senast. Du kan använda Push-Locationcmdlet (pushd) för att
pop platsen antingen dess standardstack eller från en stack som du skapar.
powershell_ise.exe
ise
Visar en förklaring om hur du kan använda PowerShell_ISE.exe
kommandoradsverktyg
Push-Location
pushd
Lägger till den aktuella platsen överst i en platsstapel
Ta emot-jobb
rcjb
Hämtar resultaten av den aktuella sessionen Windows PowerShell-bakgrund
jobb
Ta emot-PSSession
rcsn
Hämtar resultat av kommandon från frånkopplade sessioner
Ta bort sak
del
Tar bort filer och mappar
Ta bort sak
radera
Gör samma sak som del
Ta bort sak
rd
Gör samma sak som del och radera
Ta bort sak
ri
Gör samma sak som del, radera och rd
Ta bort sak
rm
Gör samma sak som del, radera, rd och ri
Ta bort sak
rmdir
Tar bort mappar
Remove-ItemProperty
rp
Låter dig ta bort en egenskap och dess värde från ett visst objekt
Ta bort-jobb
rjb
Låter dig ta bort ett Windows PowerShell-bakgrundsjobb
Ta bort-modul
rmo
Hjälper dig att ta bort moduler från din nuvarande session
Ta bort-PSBreakpoint
rbp
Låter dig ta bort brytpunkter från den aktuella konsolen
Ta bort-PSDrive
rdr
Tar bort tillfälliga Windows PowerShell-enheter, samt kopplar bort
mappade nätverksenheter
Ta bort-PSSession
rsn
Låter dig stänga en eller flera Windows PowerShell-sessioner (PSSessions)
Ta bort-PSSnapin
rsnp
Gör att du kan ta bort Windows PowerShell snapin-moduler från din nuvarande
session
Ta bort-variabel
rv
Rensar en variabel och dess värde
Ta bort-WMIObject
rwmi
Låter dig ta bort en instans av en befintlig Windows Management
Instrumentering (WMI) klass
Byt namn på objekt
ren
Hjälper dig att byta namn på ett objekt i ett Windows PowerShell-leverantörsnamnområde
Byt namn på objekt
rni
Gör samma sak som ren
Rename-ItemProperty
rnp
Gör att du kan byta namn på ett objekts egenskap
Lös-Path
rvpa
Löser jokertecken i en sökväg, samt visar innehållet
av stigen
Resume-Jobb
rujb
Hjälper dig att starta om ett jobb som var avstängt
Välj-objekt
Välj
Låter dig välja objekt såväl som deras egenskaper
Set-Alias
sal
Låter dig skapa eller ändra en cmdlets eller kommandoelements alias
(alternativt namn) i den aktuella Windows PowerShell-sessionen
Set-Content
sc
Låter dig ersätta en fils innehåll med innehåll som du anger.
Set-artikel
si
Ändrar ett objekts värde till ett värde som anges i kommandot
Ställ-plats
CD
Låter dig ställa in din nuvarande arbetsplats till en angiven plats (ändringar
den aktiva platsen)
Ställ-plats
chdir
Gör samma sak som cd
Ställ in-PSBreakpoint
sbp
Låter dig ställa in en brytpunkt på ett kommando, variabel eller rad
Set-Variabel
uppsättning
Gör att du kan ställa in en variabels värde eller genererar en variabel om en med
det begärda namnet finns inte
Visa-kommando
shcm
Visar en lista över Windows PowerShell-kommandon i en grafik
kommandofönstret
Start-Jobb
sajb
Startar ett bakgrundsjobb i Windows PowerShell
Start-process
safter
Startar en eller flera lokala processer
Starta service
sasv
Låter dig starta en eller flera stoppade tjänster
Stopp-process
döda
Hjälper dig att stoppa en eller flera pågående processer
Var-Objekt
?
Gör att du kan välja vissa objekt från en samling baserat på deras
fastighetsvärden
Skriv-utgång
eko
Låter dig skicka ett objekt till nästa kommando i pipelinen. Om det
når det sista kommandot i pipelinen, kommer kommandot att visas
objekten i konsolen

Låt inte den stora mängden grundläggande PowerShell-kommandon skrämma dig. Även om vi kallade dem grundläggande, finns det absolut ingen anledning för dig att börja memorera dem. Det är faktiskt den exakta anledningen till att vi skapade tabellen ovan så att du kan fortsätta med ditt arbete utan att behöva oroa dig för att behöva komma ihåg varje kommando vi nämnde ovan.

Du kan använda den som en snabb uppdatering eller till och med använda webbläsarens sökfunktion för att hitta ett specifikt kommando, dess alias och vad det gör om du är förvirrad. Även om vi redan inkluderade den här informationen i tabellen ovan, om du någonsin är förvirrad när du arbetar i PowerShell, kommer hjälpkommandot att visa några användbara detaljer om hur du kan använda det här programmet och dess kommandon mer effektivt.

Du kan också para ihop hjälpkommandot med ett annat kommando eller alias om du vill ha mer information om det specifika kommandot. Det här är till exempel vad PowerShell visar när du skriver help Add-Computer:

Du kan dock använda hjälp med alla andra kommandon eller deras alias i vår tabell ovan. Se till att du förstår att samma kommando kan ha flera alias, vilket betyder att du kan uppnå samma resultat genom att använda olika alias. Även om detta [month] låter förvirrande, det ger dig faktiskt massor av flexibilitet om du inte kommer ihåg ett kommandoalias, men du kommer ihåg ett annat som kan hjälpa dig att uppnå samma mål.

Använder PowerShell

Naturligtvis är det första du vill göra att hitta PowerShell och starta det. Ett säkert sätt att starta PowerShell från nästan var som helst på din PC är att hålla nere Shift-knappen på tangentbordet, högerklicka på en tom plats på skärmen (inte en meny, ikon, knapp eller liknande objekt), och välj Öppna PowerShell-fönstret här från snabbmenyn.

Förutom att ge dig snabb åtkomst till PowerShell-konsolen var som helst på din PC, ändras automatiskt standardarbetskatalogen för PowerShell till den du för närvarande befinner dig på. Om du är på en Windows 10-dator kan du också starta PowerShell genom att trycka på Win-tangenten på ditt tangentbord, skriva PowerShell i Start-menyn och välja PowerShell när det blir synligt i resultatlistan.

På äldre versioner av Windows måste du manuellt hitta den körbara PowerShell-filen, som du antingen kan hitta i Tillbehörs- eller Systemmapparna i Start-menyn. Dessutom, när du ser hur äldre system (som Windows 7) inte ger dig PowerShell som standard, måste du också installera det på din dator, tillsammans med alla dess beroenden.

Lägg märke till hur start av PowerShell från Start-menyn kommer att ställa in din aktiva arbetskatalog till C:Users[your username here]. Som jämförelse kan du använda Shift + Högerklicka-metoden som vi har presenterat ovan för att ställa in PowerShells aktiva katalog till den du befinner dig på när du skapar konsolen. Om du till exempel använder Shift + högerklicka och öppnar PowerShell från ditt skrivbord, kommer du att märka att den aktiva katalogen kommer att vara C:Users[your username here]Skrivbord. Av uppenbara skäl [your username here] del kommer att vara annorlunda beroende på ditt användarnamn.

Även om du kan behålla PowerShell för hemmabruk bra, är det bättre om du kan använda allt som det har att erbjuda. Dessa funktioner gör för övrigt PowerShell fantastiskt för företagsanvändning, där du behöver utföra ett stort antal operationer på kort tid, och med största sannolikhet på ett stort antal enheter.

Således, istället för att köra varje kommando manuellt på varje enskild maskin, kan du helt enkelt skapa ett automatiseringsskript i PowerShell och ta emot den information du behöver automatiskt, utan att behöva fysiskt interagera med enheterna i fall eller ens vara nära dem. Precis som CMD kan PowerShell användas via kommandorader. Men till skillnad från sin mer rudimentära motsvarighet (dvs. CMD) låter PowerShell dig även kalla fram skript och cmdlets, vilket gör det kraftfullare, men också mer komplicerat att använda.

Hur man använder cmdlets

Vi har använt termen cmdlets ganska många gånger i vår guide, så du undrar förmodligen vad de betyder. Tja, för att börja från början är det värt att påminna dig om att CMD fungerar med kommandon. En cmdlet, som uttalas command-let, är också ett kommando, men till skillnad från traditionella CMD-kommandon är cmdlets specifika för PowerShell och låter dig utföra enstaka specifika operationer, som att kopiera filer, flytta objekt från en plats till en annan, ändra den aktiva katalog eller se innehållet i ett objekt.

Enkelt uttryckt är cmdlets en funktionskommandon som du kan skriva direkt i PowerShells kommandorad. Om du har någon tidigare erfarenhet av CMD, kommer du att tycka att PowerShell är något intuitivt att arbeta med. En intressant sak med PowerShell är att den delar massor av kommandon med CMD. Därför kommer användning av CD med PowerShell fortfarande att ändra din aktiva katalog, DIR kommer fortfarande att visa innehållet i den aktuella mappen, och CP låter dig fortfarande kopiera ett objekt från en plats till en annan.

Det är ganska värt att nämna att PowerShell inte är skiftlägeskänslig, till skillnad från många andra skal, som returnerar fel om du missar att använda rätt skiftläge när du skriver dina kommandon i dem. Således kommer copy-item att fungera lika bra som Copy-Item, och om du inte kommer ihåg någon av dem kan du också använda Copy, CP och CPI (men även copy, COPY, cp eller cpi).

De flesta PowerShell-cmdlets är skrivna i C# och är speciellt byggda för att utföra operationer som returnerar ett .NET-objekt som resultat. För närvarande kan du hitta mer än ett par hundra cmdlets du kan använda i PowerShell, vilket, låt oss vara rättvisa, ger dig mer än bara lite armbågsutrymme när det gäller att utföra operationer.

Även om det kommer att vara svårt att komma ihåg alla cmdlets du [month] måste arbeta med (kom ihåg att du kan använda tabellen ovan), det finns några som du kommer att använda oftare, vilket kommer att göra dem otroligt lätta att komma ihåg. För att inte nämna det faktum att vissa av dem är så intuitiva att deras namn faktiskt ger bort deras syfte (t.ex. kopiera används för att kopiera objekt, flytta kan användas för att flytta filer, jämför hjälper dig att jämföra uppsättningar av objekt, etc).

Men om du inte riktigt är på humör för att bokmärka den här artikeln för att använda den senare, kan du också skriva in Get-Command-cmdleten i PowerShell, eller gcm, om du vill hålla saker kort. Om du gör det visas en fullständig lista över kommandon som är tillgängliga för dig, och du kan använda den listan för att planera i förväg vad det än är du försöker göra.

Låser upp anpassade cmdlets

På nackdelen, Microsoft ger dig inte bara full tillgång till hela utbudet av cmdlets som du kan använda i PowerShell som standard, så du måste hoppa igenom ett gäng extra bågar för att låsa upp den här funktionen och använda den på din fritid. Den goda nyheten är att upplåsningsprocessen inte tar lång tid, och sedan finns det det faktum att det också kan göras genom PowerShell, vilket kommer att vara bra för dig. Utan vidare, låt oss se hur du kan låsa upp anpassade cmdlets-privilegier i PowerShell.

Logga in på ett administratörskonto (det fungerar inte utan administratörsrättigheter)
Starta PowerShell med administratörsrättigheter (Kör som administratör)
Skriv följande kommando i PowerShell och tryck på Enter:

Om det görs rätt kommer PowerShell att fråga dig med en dialogruta som ber dig om det nya ExecutionPolicy-värdet
Skriv RemoteSigned i PowerShell-kommandotolken och tryck på Retur
PowerShell ger dig information om riskerna med att ändra värdet på ExecutionPolicy
Skriv Y och tryck på Enter
Om du behöver stänga av anpassade cmdlets, följ bara steg 1-4, och när PowerShell ber dig att skriva in värdet, skriv Restricted och bekräfta ditt val som du gjorde i steg 7

Om du vill effektivisera hela processen och inte slösa tid på att skriva ner allt i PowerShells kommandotolk, kommer du att bli glad att veta att det finns ett ännu enklare sätt att uppnå samma resultat. Starta PowerShell med administratörsrättigheter som du gjorde i steg ett, och istället för att skriva varje kommando och vänta på prompten, kommer du att pipelinea allt fram till bekräftelsen genom att skriva detta:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

Naturligtvis måste du fortfarande bekräfta ditt val genom att skriva Y och trycka på Enter på tangentbordet, men du hoppade bara över ett steg och utförde en rad operationer samtidigt. Det är precis därför avancerade PowerShell-användare skapar automatiseringsskript för att utföra olika hanteringsoperationer automatiskt: för att spara tid och krångel. Om du vill kan du använda samma kommando ovan för att inaktivera anpassade cmdlets på ditt system, men du måste ersätta RemoteSigned med Restricted och även bekräfta ditt val i slutet.

Du kan också använda AllSigned och Unrestricted för att ge dig själv ännu fler privilegier när det gäller att köra potentiellt osäkra skript på din Windows PowerShell. Alternativet AllSigned låter dig köra alla skript som skapats av betrodda utgivare, medan alternativet Obegränsad gör det möjligt för PowerShell att köra vilket skript som helst, oavsett dess ursprung och tillförlitlighet. Naturligtvis är alternativet Obegränsad också det farligaste, så försök undvika det så gott du kan, om möjligt, särskilt om du är nybörjare på PC.

Ser? PowerShell börjar redan se mycket mer tillgängligt ut än det gjorde för bara några minuter sedan.

Hur man skapar och använder skript i PowerShell

Som vi har nämnt tidigare och vi är helt säkra på att du kommer ihåg, kan du använda PowerShell för att köra automatiseringsskript. Men du kan inte bara skrika till PowerShell ”Hej du, skapa det här skriptet åt mig!” och förvänta dig att det på magiskt sätt fungerar, så du måste lägga i lite armbågsfett och få det gjort själv. Hur obekvämt detta än är [month] ljud just nu, lita på oss, du kommer att vara tacksam i det långa loppet, med tanke på allt arbete du inte behöver göra längre.

Även om de flesta av oss förlitar oss på specialiserad programvara som IDE:er för att skapa skript eller program på ett specifikt programmeringsspråk, är det sant att du kan använda vilken textredigerare som helst så länge den kan spara filer till rätt tillägg. Och även om det inte kan, kan du bara navigera till filen du skapade och ändra dess tillägg manuellt genom att byta namn på den, men låt oss gå tillbaka till våra får.

Om du är intresserad av att skapa ett skript som kan fungera i PowerShell, kommer du att bli glad över att veta att det här skriptet du förmodligen har hört mycket om, bara är ett textdokument med en tillägg som gör det kompatibelt med PowerShell, PS1 . Därför är det lätt att se varför man faktiskt kan hantera dessa skript från praktiskt taget vilken textredigerare som helst, så länge du sparar den med rätt (PS1) tillägg.

Write-host ”Vänligen ange ditt namn:”

$Name = läsvärd

”Hej $Name! Besök wdzwdz.com för fler fantastiska tutorials och guider!”

Nu till själva skapandet:

Starta Anteckningar (eller någon annan textredigerare för den delen)
Kopiera koden ovan (skriptet du kommer att skapa och köra)
Klistra in det i ditt nya Notepad-dokument
Använd CTRL + S för att spara dokumentet
Skriv script.ps1 som filnamn
Spara filen någonstans tillgängligt
Öppna en PowerShell-instans med administratörsrättigheter (mycket viktigt)
Se till att du har aktiverat anpassade skript på ditt system (kolla avsnitten ovan)
Navigera till platsen där du sparade skriptet
Skriv in hela sökvägen för skriptet för att köra det
Till exempel, om ditt skript finns i en Script-mapp på din C-enhet, kommer ditt kommando att vara C:Scriptsscript.ps1
Alternativt kan du helt enkelt navigera till platsen för ditt skript och använda det här kommandot för att köra det: .script.ps1

Om du inte kan köra skriptet och PowerShell returnerar ett fel, se till att du har aktiverat PowerShell för att köra anpassade skript på ditt system och att du kör PowerShell som administratör. Att inte göra någon eller båda sakerna som vi har angett i våra instruktioner kommer med största sannolikhet att resultera i ett fel och du kommer inte att kunna köra ditt skript.

Kom ihåg att detta bara är ett grundläggande manus som liknar klassikern ”Hej världen!” ett. Det sätter en snurr på det genom att interagera med dig (dvs. frågar vad du heter) och låter dig interagera med det (dvs. att skriva ditt namn som kommer att användas för att skriva ut ett meddelande till dig). PowerShell kan dock köra mycket mer komplexa skript, allt från att samla in data från en mängd maskiner till intrikat datahantering, avancerade systemkonfigurationsoperationer och till och med skapa säkerhetskopior av SQL-databaser på ett ögonblick.

Hur kan jag säkerhetskopiera SQL-databaser med PowerShell?

Vi är glada att du frågade. Som vi har nämnt otaliga gånger i vår guide finns det nästan oändliga möjligheter när det kommer till operationer som PowerShell kan hjälpa dig att utföra. En av de mest populära är att säkerhetskopiera en SQL-databas utan att behöva gå långt eller ha extraordinära databashanteringsmöjligheter. Allt du behöver göra är att starta en förhöjd instans av PowerShell (med administratörsbehörighet) och använda kommandot Backup-SqlDatabase. Saker och ting är dock lite mer komplicerade än så, men vi kommer till det om några.

Att säkerhetskopiera en SQL-databas är inte så lätt som att bara kopiera filer från din dator till en säker plats och hoppas att de förblir säkra närhelst du [month] behöver dem för att utföra dataåterställningsoperationer, men på den ljusa sidan kan PowerShell få det att se ut som en promenad i parken. Även om det finns flera sätt att uppnå detta, är det snabbaste och enklaste sättet att säkerhetskopiera en SQL-databas att använda kommandot vi har nämnt ovan.

Bland funktionerna i kommandot Backup-SqlDatabase är det möjligt att hitta fullständiga säkerhetskopior av databas, säkerhetskopior av databasfiler, såväl som säkerhetskopior av transaktionsloggar, så att du fick hela paketet i ett enda kommandoradsverktyg. Som standard kommer det här kommandot att utföra en fullständig säkerhetskopiering av databasen, så du måste ange om du vill att den ska följa en viss uppsättning regler genom att använda parametern BackupFile.

Observera att vissa versioner av PowerShell inte har det här kommandot som standard, så du måste antingen importera det eller installera det. Den goda nyheten är att installationen av SQL-modulen inte precis är raketvetenskap och kan utföras även av nybörjare. Det här är vad du måste göra om du inte kan använda kommandot Backup-SqlDatabase i din PowerShell-session:

Starta PowerShell med administratörsrättigheter
Skriv följande kommando:

När du blir ombedd att bekräfta dina handlingar, skriv Y och tryck på Enter på tangentbordet
Bekräfta det opålitliga arkivet en gång till genom att skriva Y och Enter
När installationen är klar skriver du följande kommando:

Försök att köra kommandot Backup-SqlDatabase genom att skriva det på PowerShell-kommandoraden
Om det fungerar bör du se att PowerShell ber dig att ange värden för vissa parametrar
Om det inte fungerar, se till att du har ställt in PowerShells behörighet att tillåta den att köra anpassade skript

1. Slutför säkerhetskopiering av SQL-databas

Backup-SqlDatabase -ServerInstance ”ComputerInstance” -Databas ”wdzwdz”

Kommandot som vi har exemplifierat ovan kommer att generera en fullständig databassäkerhetskopiering av en databas som heter wdzwdz och spara den på standardplatsen för säkerhetskopiering av ”ComputerInstance”-serverinstansen som ’wdzwdz.bak’.

2. Utför en platsbaserad databassäkerhetskopiering

Ange plats ”SQLSERVER:SQLComputerInstance”
PS SQLSERVER:SQLComputerInstance> Backup-SqlDatabase -Databas ”wdzwdz”

Det första kommandot ovan kommer att ändra din plats till den aktiva katalogen inom serverinstansen där säkerhetskopieringen kommer att ske. I huvudsak fungerar den här tekniken nästan som den fullständiga databassäkerhetskopieringen som vi har exemplifierat ovan, men i det här exemplet får du ändra arbetskatalogen för att hitta serverinstansen där säkerhetskopieringen sker.

Denna operation kommer också att skapa en fullständig säkerhetskopia av en databas som heter wdzwdz och exportera den som en ’wdzwdz.bak’-fil på standardplatsen för serverinstansen du är ansluten till.

3. Utför en säkerhetskopiering av transaktionsloggen

Backup-SqlDatabase -ServerInstance ”ComputerInstance” -Databas ”wdzwdz” -BackupAction Log

Om du bara behöver säkerhetskopiera transaktionsloggen för en specifik databas, kan PowerShell också hjälpa dig att göra det genom ett enda kommando som du kan mata in direkt i dess kommandoradsgränssnitt. Kommandot ovan genererar en säkerhetskopia av ’wdzwdz’-databasens transaktionslogg och exporterar den till standardplatsen för ’ComputerInstance’-serverinstansen som en fil med namnet ’wdzwdz.trn’.

4. Skapa en krypterad SQL-databas backup

$EncryptionOption = New-SqlBackupEncryptionOption -Algorithm Aes256 -EncryptorType ServerCertificate -EncryptorName ”BackupCert”
Backup-SqlDatabase -ServerInstance ”.” -Databas ”wdzwdz” -Backupfil ”wdzwdz.bak” -CompressionOption På -EncryptionOption $EncryptionOption

Om du är orolig för att säkerhetskopiera din databas [month] faller i orätta händer kan PowerShell också hjälpa dig att skapa färdigkrypterade säkerhetskopior. Naturligtvis måste du specificera några parametrar som krypteringsalgoritmen, krypteringstypen (dvs certifikat), serverinstans, databasnamn, säkerhetskopia och om du vill att utdata ska komprimeras eller inte.

Exemplet ovan kommer att skapa en säkerhetskopia av en viss ’wdzwdz’-databas, kryptera den med AES-256-kryptering och ett servercertifikat, komprimera den och spara den resulterande ’wdzwdz.bak’-filen på serverinstansens standardplats för säkerhetskopiering. Detta är ganska viktigt om du planerar en migrering och inte har något säkert sätt att transportera alla säkerhetskopior utan att riskera att fjärma någon av dem.

5. Gör en säkerhetskopia på alla databaser i en serverinstans

Get-ChildItem “SQLSERVER:SQLComputerInstanceDatabases” | Backup-SqlDatabase

Ett annat verktyg som [month] Kom väl till pass är PowerShells förmåga att säkerhetskopiera alla databaser på en serverinstans samtidigt. Oavsett deras nummer, startar du bara PowerShell, skriver en anpassning av kommandot ovan och väntar på att säkerhetskopieringsprocessen ska ta slut. Observera att eftersom detta kommer att säkerhetskopiera alla databaser inom serverinstansen, kommer du [month] måste vänta ett tag, så ha tålamod.

Kommandot ovan kommer att säkerhetskopiera alla databaser som finns på serverinstansen ’ComputerInstance’ och exportera de resulterande filerna till standardplatsen för säkerhetskopiering på samma serverinstans. Namnen på säkerhetskopiorna kommer att genereras automatiskt enligt var och ens motsvarande databas följt av BAK-tillägget (dvs. .bak).

Även om det finns flera metoder för att utföra SQL-säkerhetskopiering med PowerShell på olika sätt, har vi bara presenterat några som vi ansåg var viktigare. Observera att kommandona vi använde i våra exempel ovan sannolikt inte kommer att fungera på din miljö i sin nuvarande form, så du måste anpassa dem till din nuvarande situation.

Du måste till exempel ändra parametern ’ComputerInstance’ så att den matchar din egen serverinstans och ändra namnet på din databas för att återspegla namnet på din egen databas. Kom ihåg att du alltid kan vända dig till hjälpkommandot i PowerShell om du någon gång känner att kommandot du försöker köra är förvirrande eller inte fungerar som det ska.

Måste känna till PowerShell-kommandon

1. Få hjälp

Vi kan inte betona detta nog, men kommandot Get-Help borde vara det första du någonsin lär dig, eftersom det på allvar kan ta dig ur många svåra situationer där du inte är exakt säker på om du använder rätt kommando, eller exakt vad du kan uppnå med kommandot som du försöker distribuera.

Nu när du har installerat sqlserver-modulen på ditt system kan du prova kommandot Get-Help nu och se hur Backup-SqlDatabase fungerar. Skriv bara Get-Help Backup-SqlDatabase på kommandoraden i PowerShell och fräscha upp dina färdigheter i PowerShell SQL-databassäkerhetskopiering.

Observera att om du nyligen installerade sqlserver-modulen på ditt system, hjälpdatabasen [month] fortfarande vara föråldrad, och du [month] måste köra en uppdatering på den så att den kan komma ikapp med nya skript. Som standard kommer PowerShell att upptäcka att innehållet du försöker nå är tillgängligt online, men du kan inte komma åt det lokalt, och erbjuder till och med att uppdatera databasen åt dig. I det här fallet behöver du bara skriva Y när du uppmanas att göra det och trycka på Enter på tangentbordet.

Men om PowerShell bara uppmanar dig med ett felmeddelande om att det inte finns någon hjälpmanual tillgänglig för kommandot du är intresserad av, kan du uppdatera det manuellt genom att skriva Update-Help och trycka på Enter-tangenten på tangentbordet. Efter att uppdateringsprocessen tar slut bör du kunna kontrollera tillgänglig hjälpdokumentation för kommandot du är intresserad av.

2. Get-Process

Get-Process är avgörande om du vill upptäcka mer om systemet du för närvarande arbetar med. För att vara mer specifik, även om du kanske redan har gissat vad det här kommandot gör genom att bara titta på det, kommer Get-Process att ge dig en lista över alla processer som för närvarande körs på systemet du arbetar med.

Som standard hämtar Get-Process en lista över alla processer som körs på det aktuella systemet du arbetar med, så att du [month] måste lägga till några extra parametrar till detta kommando om du vill ha mer specifik information och begränsa listan med resultat. Kolla på skärmdumparna nedan vad du får när du kör kommandot Get-Process av sig själv kontra hur det ser ut om du är mer specifik och formaterar resultaten.

Get-Process explorer | Format-lista *

Det andra kommandot kan anpassas för att visa ytterligare information om alla aktiva processer på ditt system. Du kan ersätta explorer med svchost eller Chrome eller någon annan aktiv process på ditt system som du är intresserad av. Som vi har nämnt ovan kan användningen av Get-Processer i sig hjälpa dig med det (dvs. att hitta en lista över alla pågående processer ).

3. Stoppprocess

Detta kommando är ganska självförklarande, precis som du [month] har redan kommit på att det kan hjälpa dig att stoppa processer som för närvarande körs på ditt system. Det vanligaste skälet till att göra det från PowerShell och inte genom att använda Windows Task Manager är att processer ibland kan frysa och göra GUI-appar knappt användbara.

PowerShell-användare kan enkelt identifiera en besvärlig process med hjälp av kommandot Get-Process som vi tidigare har förklarat, och sedan använda Stop-Process för att avsluta den och på så sätt täppa till systemet. Om du kör Stop-Process av sig själv (utan någon ytterligare parameter) i ditt PowerShell kommandoradsgränssnitt kommer du att uppmana dig att mata in ID:t för processen du försöker avsluta.

Du kan dock också avsluta en process med dess namn (om du känner till det) genom att lägga till parametern -Name till cmdleten, som i exemplet nedan:

Stop-Process – Namn ”utforskare”

Kommandot ovan kommer att avsluta Explorer-processen, vilket kan vara användbart särskilt om det fryser eller kraschar på dig och vägrar att ladda ordentligt. Observera att du måste använda citattecken när du anger namnet på processen du försöker avsluta. Om en process är envis och vägrar att avsluta (vanligtvis gör processer med högre clearance det), kan du ”övertyga” den genom att lägga till en -Force-parameter till ditt kommando. Säg till exempel att du inte kan avsluta din Explorer-process. I det här fallet kan du helt enkelt skriva kommandot nedan:

Stop-Process -Force -Name ”explorer”

Dessutom är det värt att nämna att användning av parametern -Force i ditt Stop-Process-kommando inte kommer att begära bekräftelse, i motsats till att köra kommandot utan detta alternativ. Om du vill veta mer om denna cmdlet, se till att använda kommandot Get-Help.

4. Skaffa service

Detta kommando är en av de viktigaste kommandolistan av goda skäl: det kan ge dig en lista över alla tjänster som för närvarande är installerade på systemet du arbetar med, oavsett om de körs eller inte. Som med många andra cmdlets kan du anpassa Get-Service för att ge dig mer specifik information, antingen angående en viss tjänst eller till och med visa en lista över alla pågående (eller stoppade) tjänster på din maskin.

Du kan gå vidare och skriva Get-Service på din PowerShell-kommandorad. Om du gör det bör du få en lista över alla tjänster som är tillgängliga på din dator, samt deras visningsnamn och status. Om du lägger till ett ytterligare kommando till den ursprungliga cmdleten kan du ändra utdata så att den bara visar resultat som du är intresserad av.

Om du till exempel skriver kommandot ovan bör du returnera en lista över alla tjänster som är tillgängliga på din dator som börjar med bokstaven ”W”. Du kan dock gå ännu längre och anpassa ditt kommando för att begränsa listan med resultat ännu mer.

Get-Service | Where-Object {$_.Status -eq “Running”}

Kommandot ovan låter dig se en lista över alla tillgängliga tjänster på din dator som också körs när du kör cmdleten. Om du lägger till ”W*” som vi gjorde i föregående exempel visas en lista över alla tjänster som körs på din dator som börjar med bokstaven ’W’, och kommandot ska se ut så här:

Get-Service “W*” | Where-Object {$_.Status -eq “Running”}

5. Get-EventLog

Varje ansvarig systemadministratör bör känna sin väg runt arbetet med händelseloggar, eftersom dessa dokument kan ge dig användbar kunskap om vad som hände på ditt system, vid vilken tidpunkt det inträffade och ibland till och med vad som utlöste den specifika händelsen.

Därför kan vi säkert anta att PowerShells Get-EventLog-kommando inte är något du vill missa från ditt verktygsbälte, speciellt om du planerar att finslipa dina systemadministrationskunskaper. Om du vet allt som finns att veta om händelseloggar och deras namn, kan du gå vidare och skriva Get-EventLog direkt på din PowerShells kommandorad. Observera att PowerShell kommer att uppmana dig att ange namnet på loggen du försöker visa.

Om du skriver namnet på en tom händelselogg (en utan poster), kommer PowerShell att fråga dig med ett felmeddelande och återgå till kommandoradsgränssnittet. Därför skulle det vara enklare om du bara använde kommandot nedan, som ger dig en lista över händelseloggar på ditt system, tillsammans med ytterligare information om var och en, såsom standardspillningsåtgärden och antalet poster.

Ett av de mest populära användningsfallen för händelseloggar är att leta efter fel, speciellt om de inträffade tyst, kort efterföljdes av en systemkrasch eller leder till en BSOD, vilket vi alla vet hur kryptiskt kan vara. Du måste dock vara mer specifik med Get-EventLog cmdlet om du vill begränsa listan med resultat, som ofta kan vara enorm.

Get-EventLog -LogName Security -EntryType Error

Om du skriver kommandot ovan i din PowerShells kommandoradsgränssnitt bör du få en lista över alla fel som registrerats i din säkerhetshändelselogg. Observera att du kan använda parametern -List för att se alla loggtyper i ditt system och ersätta Security i kommandot ovan med någon annan loggtyp som du hittar på din lista, bara så länge den har fler än noll poster.

Om du vill lära dig mer om hur du använder kommandot Get-EventLog i PowerShell, använd gärna kommandot Get-Help som vi har pratat om i det första avsnittet i detta underkapitel.

6. Konvertera till HTML

Ibland när du använder PowerShell, kan du [month] snubblar över viss information som du vill extrahera och behålla för framtida referens, skapa rapporter eller helt enkelt importera den från ett annat program. Ett av de mest använda sätten att extrahera denna data från PowerShell och exportera den till en extern fil på din dator är kommandot ConvertTo-HTML.

Att använda det här kommandot hjälper dig att skapa omfattande rapporter som kan hjälpa dig att analysera extraherad information och insikter på ett mer effektivt sätt genom att förse dig med HTML-tabeller som du kan anpassa senare genom att lägga till anpassade stilar och färgkodade data. Som med många andra PowerShell-kommandon fungerar inte ConvertTo-HTML av sig självt, och du måste para ihop det med ett extra kommando som det kommer att använda som en ingång (eller en datakälla).

Om du till exempel försöker skriva ut en rapport som består av varje tjänst som börjar med bokstaven ”W” och som för närvarande körs på din dator, kan du skriva kommandot nedan:

Get-Service “W*” | Where-Object {$_.Status -eq “Running”} | Konvertera till HTML

Detta kommer att ge dig en HTML-kod för de data du matade till ConvertTo-HTML-funktionen, som du helt enkelt kan kopiera direkt från PowerShells kommandoradsgränssnitt, klistra in den i din favorittextredigerare och spara den som en HTML-fil, vilket du kan använda för att se resultatet i vilken webbläsare som helst.

Du kan använda ConvertTo-HTML med praktiskt taget alla PowerShell-kommandon, så länge kommandot du använder som datakälla genererar utdata. Du kan prova det med andra cmdlets, som Get-Process, Get-EventLog eller Get-Help. Observera att förutom HTML-konverteringar kan ConvertTo-cmdleten också användas för att generera JSON-, CSV- och XML-filer. Du behöver bara ersätta HTML i kommandosyntaxen med formatet du är intresserad av.

7. Exportera-CSV

Om du arbetar med olika föremål som du känner [month] passar mycket bättre i en tabell, kan du använda PowerShell för att konvertera objekten du för närvarande hanterar till en serie CSV-strängar (kommaseparerade värden) och exportera strängarna till en fil i en snabb rörelse genom Export-CSV-cmdleten.

Precis som med ConvertTo-HTML behöver Export-CSV en indata som den kan konvertera till CSV-strängar, eftersom den inte bara kan fungera på egen hand. Därför måste du para ihop det med ett kommando som kan användas för att generera data, till exempel Get-Service eller Get-Process som vi har förklarat tidigare.

I grund och botten gör Export-CSV nästan samma sak som ConvertTo-HTML cmdlet vi har diskuterat ovan, bortsett från en viktig aspekt som inte bör förbises: denna cmdlet genererar faktiskt en fil och sparar den på din dator, till skillnad från kommandot ConvertTo, som bara ger dig utdata och låter dig skapa filen på egen hand.

Låt oss till exempel anta att du vill förvandla listan över tjänster som körs på din dator till en CSV-fil så att du kan bearbeta filen vidare med programvara från tredje part, eller lägga den i ett kalkylblad för vidare referens. Allt du behöver göra är att skriva kommandot Get-Service följt av Export-CSV-kommandot och nämna en plats där du vill att CSV-filen ska genereras, som i exemplet nedan:

Get-Service | Export-CSV c:wdzwdz.csv

Kommandot ovan hämtar en lista över alla tjänster som är tillgängliga på din dator, körs eller inte, konverterar dem till en serie CSV-strängar och sparar resultatet som en CSV-fil med namnet ’wdzwdz’ i roten på din C-enhet . Du kan sedan öppna filen i en mjukvarulösning från tredje part, konvertera den till en fullfjädrad tabell eller bara lagra den för framtida bruk.

PowerShell cheatsheet – SLUTSATS

Även om det fortfarande finns många som förespråkar CMD, är PowerShell sanningen mer mångsidig, mycket kraftfullare, men samtidigt mer komplicerad att arbeta med än sin traditionella CMD-motsvarighet. Den stora mängden funktioner, i kombination med det faktum att du kan skapa automatiseringsskript i PowerShell och utföra komplicerade systemhanteringsoperationer lämnar bara CMD i en skugga.

Om du precis har börjat upptäcka PowerShell och du kämpar för att ta reda på vad varje kommando gör, hur man pipelinerar flera kommandon eller hur man skapar och kör enkla PowerShell-skript på egen hand, är vår guide en bra utgångspunkt. Vi har tagit oss tid att förklara några av de viktigaste kommandona du bör känna till i PowerShell, skapat några korta handledningar och även inkluderat en lista med grundläggande PowerShell-kommandon, deras alias och korta beskrivningar för varje objekt, bara för att förenkla din PowerShell-upptäckarresa.