De fleste af os foretrækker PowerShell på grund af dets automatiseringsmuligheder. Det er en kommandolinjeskal med et fuldt udviklet scriptsprog. Du kan bruge de indbyggede cmdlets eller skrive dit eget script til at automatisere de administrative opgaver i Windows og andre kompatible operativsystemer. Det giver dig mulighed for at gøre alt, hvad du kan gøre med GUI-apps og mere.

At mestre funktionaliteten og fleksibiliteten i PowerShell indebærer imidlertid en stejl indlæringskurve. Hvis du lige er begyndt med PowerShell, er her de essentielle kommandoer, du kan lære for at mestre dette scriptsprog i det lange løb.

1. Få hjælp

Få hjælp, som navnet antyder, er en del af PowerShells integrerede hjælpesystem. Det hjælper dig med at finde nødvendige oplysninger om kommandoen, koncepter og funktioner, identificere alias, scripts og mere.

For at få hjælp til en PowerShell-cmdlet skal du bruge Get-help-cmdlet'en efterfulgt af et cmdlet-navn. For at se synopsis og syntakser, der er knyttet til get-process cmdlet, skal du f.eks. skrive:

Få-Hjælp-Behandle

Denne kommando kan læse både kommentarbaseret og XML-baseret hjælp fra funktionsforfatteren.

Alternativt kan du bruge Få-hjælp -online kommando for at få hjælp til en PowerShell cmdlet online. For eksempel for at se Microsofts online dokumentation for Hent-indhold cmdlet, skriv:

Få-Hjælp-Indhold -online

2. Hent-proces

Det Hent-proces kommando hjælper dig med at hente og vise en liste over alle de aktive systemprocesser med deres identifikatorer (ID'er). Du kan bruge den som en effektivt alternativ til Windows Task Manager for at se, stoppe og genstarte systemprocesser.

For eksempel, hvis du skal stoppe GameBar-processen, skal du først finde det proces-id, der er knyttet til det. Så skriv:

Hent-proces

Denne kommando viser alle de kørende systemprocesser. Find derefter det id, der er knyttet til den proces, du vil stoppe. For at stoppe processen skal du skrive:

Get-Process -ID 20496 | Hold op-Behandle

Her -ID 20496 er ID'et for den proces (GameBar), du vil stoppe.

3. Start-proces

Du kan bruge Start-proces cmdlet i PowerShell for at starte en eller flere processer på en lokal computer. For at bruge cmdlet'en skal du skrive Start-Process efterfulgt af procesnavnet. For eksempel, hvis du vil starte en ny notesblok-proces, skal du skrive:

Start-Behandle notesblok 

Derudover kan du bruge parametrene for Start-Process til at angive indstillinger. Hvis du f.eks. skal starte en proces som administrator, skal du skrive:

Start-Process -FilePath "notesblok" -Verb runAs

4. Hent-kommando

Det Hent-kommando lader dig se alle PowerShell-kommandoer installeret på din computer. I lighed med Get-Help kan du bruge Get-Command efterfulgt af en søgeforespørgsel til at finde kommandoer til en bestemt funktion.

Da Get-Command viser alle kommandoerne, kan du angive parametre for at finde funktioner med et specifikt navn og CommandType. For at finde cmdlet'er (CommandTypes), der starter med A (navn), skal du skrive:

Get-Command -Name A* -CommandType cmdlet

Alternativt skriv Få-hjælp Get-Command -Eksempler for at se flere eksempler.

5. Få-service

Det Få-service cmdlet lader dig se din computers status og liste over tjenester. Som standard returnerer kommandoen Get-Service alle (stoppede og kørende) tjenester.

Du kan bruge parametrene til at specificere og finde tjenester afhængigt af deres status, navn og afhængige tjenester. For at se alle tjenester, der starter med navnet Win, skal du f.eks. skrive:

Get-Service -Navn "Vinde*"

6. Get-ChildItem

Du kan bruge PowerShell til at søge gennem mapper. Det Get-ChildItem command er en praktisk cmdlet til at lede efter mapper og filer og hurtigt udføre indholdsbaserede søgninger uden at bruge File Explorer.

For at se alle mapperne på øverste niveau i mappen C:\ skal du skrive:

Get-ChildItem "C:\"

Brug desuden -Sti parameter for at se en bestemt mappe, undermapper og indhold. For at se alle undermapperne og filerne i mappen Programmer Filer skal du f.eks. skrive:

Get-ChildItem -Path "C:\Program Files"

Brug desuden -Genfald parameter for at se alle filerne i den angivne mappe og -Navn parameter for at se elementnavne i en mappe.

Get-ChildItem -Path "C:\Program Files\Fodler_Name" -Rekurs | Vælg Fuldt navn

Udskift i kommandoen ovenfor undermappe med mappenavnet for at se indholdet.

7. Kopi-vare

Det Kopi-vare cmdlet lader dig kopiere og indsætte filer og mapper og deres indhold til en anden mappe. For at kopiere filer og mapper skal du skrive Kopi-vare efterfulgt af kilden -Sti, -Bestemmelsessted parameter og destinationsadresse. For eksempel at kopiere E:\Mappe1 og dens indhold til E:\Mappe2, skriv:

Kopi-vare "E:\Mappe1" -Bestemmelsessted "E:\Mappe2" - Tilbagefald

Bemærk, at - Tilbagefald parameter i ovenstående kommando er ansvarlig for at flytte alt mappeindhold. Uden det vil PowerShell kun kopiere mappen på øverste niveau (Folder1) og filer, der er angivet i kommandoen.

8. Flyt-vare

Tilsvarende, for at flytte et element, kan du bruge Flyt-vare cmdlet. Hvis du f.eks. vil flytte mappen, filerne, undermapperne og alt dens indhold til din angivne destination, skal du skrive:

Flyt-element -sti "E:\Mappe1" -Bestemmelsessted "E:\Mappe2"

9. Fjern-vare

Det Fjern-vare cmdlet lader dig slette filer, mapper, funktioner og andre datatyper fra den angivne mappe. Hvis du f.eks. vil slette filen Test.txt i mappen E:\Folder1, skal du skrive:

Fjern-vareE:\Mappe 1\Prøve.txt

10. Hent-indhold

Det Hent-indhold cmdlet lader dig se indholdet af et element uden at bruge en teksteditor. For at hente indholdet af Test.txt-filen skal du f.eks. skrive:

Hent-indhold "E:\Mappe1\Test.txt"

Du kan yderligere angive indholdslængden for at se ved hjælp af -TotalCount parameter.

11. Klart indhold

Du kan bruge Klart indhold cmdlet for at slette indholdet af en specificeret fil uden at slette selve filen. Nyttigt til opgaveautomatisering, hvor du har et hårdkodet filnavn, men ønsker at have en ren fil, hver gang scriptet kører.

For at teste kommandoen skal du oprette en tekstfil med noget indhold i den. Skriv derefter:

Clear-Content -Path "E:\Mappe1\Test1.txt"

Dette vil slette indholdet af filen uden at slette filen.

12. Set-ExecutionPolicy

Standardudførelsespolitikken i PowerShell er indstillet til Begrænset. Dette forhindrer udførelse af ondsindede scripts i PowerShell-miljøet. Men når du udfører et lokalt PowerShell-script, kan du støde på, at eksekveringsscriptet er deaktiveret på denne systemfejl.

Det Set-ExecutionPolicy cmdlets lader dig ændre sikkerhedsniveauerne for scriptudførelse. For at kende din nuværende udførelsespolitik skal du skrive:

Get-ExecutionPolicy

Hvis du har brug for at udføre et usigneret script, skal du i en forhøjet PowerShell-prompt skrive:

Sæt-ExecutionPolicy Remote Signed

Andre gyldige Set-ExecutionPolicy-værdier inkluderer Begrænset, Allesigneret, og Ubegrænset.

13. Sæt-placering

Som standard bruger PowerShell C:\Brugere\Brugernavn som standard arbejdsmappe. Det Sæt-placering cmdlet lader dig indstille den aktuelle arbejdsmappe til en specificeret placering. Nyttigt, hvis du vil køre et script eller en kommando fra en bestemt placering uden at skulle angive stien hver gang.

For eksempel at indstille C:\Brugere\Brugernavn\Dokumenter som den aktuelle arbejdsmappe, skriv:

Sæt-placering "C:\Brugere\brugernavn\Dokumenter"

Dette er en midlertidig foranstaltning, da PowerShell vil nulstille arbejdsbiblioteket tilbage til dets standardbibliotek efter genstart.

14. Eksporter-CSV

Hvis du vil eksportere og præsentere PowerShell-output på en mere organiseret måde, kan du bruge Eksporter-CSV cmdlet. Den tager outputfilen for den angivne kommando og konverterer den til en CSV-fil.

For at teste kommandoen, prøv følgende kommando:

Hent-proces | Eksport-CSV PSprocess.csv

Ovenstående kommando vil skabe en psporcess.csv fil med alle de aktive processers data.

15. Konverter til HTML

Hvis du hellere vil oprette en HTML-rapport, kan du bruge Konverter til HTML Cmdlet. For at oprette en HTML-rapport for hele den kørende proces på din pc skal du skrive:

Hent-proces | Konverter til HTML > PSprocess.html

I ovenstående kommando, psproces er navnet på eksportfilen, og HTML er forlængelsen. Du kan få adgang til den eksporterede HTML-fil i den aktuelle arbejdsmappe, der er placeret på C:\Users\brugernavn.

16. Få-historie

Du kan bruge Op ned piletasten for at rulle gennem de nyligt udførte kommandoer i PowerShell. Men for at se en liste over alle de nyligt udførte kommandoer i din nuværende session på én gang, kan du bruge Få-historie cmdlet.

Det vil vise en liste over alle de nyligt udførte kommandoer med deres ID. Nyttigt, hvis du vil se den komplette kontekst af de tidligere udførte kommandoer. For at gøre dette skal du skrive:

Get-History Id | fl

For at se udførelsesdetaljerne såsom status, start- og sluttidspunkt og varighed for den tredje kommando, skal du f.eks. skrive:

-historie 3 | fl, 

For at køre en kommando fra listen igen, skriv:

Invoke-History efterfulgt af kommando id

For eksempel, type Invoke-Historie 3 at køre en tidligere udført kommando igen uden at skrive den igen.

Brug desuden Klar-historie for at rydde historikken for den aktuelle session.

Nu hvor du har en grundlæggende idé om PowerShell-kommandoer, skal du gå videre og udforske vores guide om det bedste PowerShell Cmdlets for at forbedre dine Windows-administratorfærdigheder. Her kan du lære at arbejde med data ved hjælp af cmdlets, formatere tabeller og liste og et hurtigt overblik over kommandoen Get-Member.

PowerShell-kommandoer til at strømline dine opgaver

PowerShell er kendt for sine automatiseringsmuligheder. Dette kan hjælpe dig med at automatisere hundredvis af aktiviteter i dit udviklingsarbejde for at spare tid og forbedre produktiviteten.

Selvom vi kun har dækket de grundlæggende kommandoer, så prøv at udforske syntaks, alias og variabler, funktioner tilgængelige på mange af disse kommandoer for at mestre dette meget effektive scriptsprog.