21. Juni, 2022

10 nemme PowerShell-kommandoer, som alle Windows-brugere bør kende

PowerShell giver dig al den kontrol, du har brug for over din Windows-pc, og det er nemt at lære. Så grøft Kommandoprompt og brug Windows PowerShell-kommandoer til at automatisere disse gentagne administrative opgaver. 

At lære PowerShell vil også lære dig, hvordan du håndterer det meste Linux administrative opgaver inde i bash-skallen. PowerShell ligner det, du finder i de fleste Linux distroer

Hvad er PowerShell?

Windows PowerShell er en kommandolinjegrænseflade og et scriptsprog udviklet af Microsoft til systemadministratorer. Men du behøver ikke at være admin eller programmør for at bruge det, fordi det er meget enklere end andre programmeringssprog. Det ligner almindeligt engelsk, og alle kan forstå det og bruge det til at administrere deres computere.

Kommandoerne, der bruges i Windows PowerShell, er kendt som "cmdlets". De vil lade dig aktivere en specifik handling eller serie af handlinger på din computer. Disse handlinger kan være enkle, som at logge på et trådløst netværk, eller mere komplekse, som at automatisere specifikke gentagne opgaver. 

For at åbne PowerShell skal du trykke på Starten knap, skriv "PowerShell” i søgefeltet, og vælg Windows PowerShell. Du åbner til kommandolinjegrænsefladen, hvor du er klar til at begynde at skrive kommandoer.

I denne artikel gennemgår vi ti af de mest nyttige og nemme PowerShell-kommandoer.

1. Få hjælp

Get-Help-cmdlet'en er et godt sted at starte i PowerShell. Det giver et overblik over, hvad du kan gøre og er også fantastisk, når du har brug for mere information om en bestemt cmdlet. 

Du skal blot åbne PowerShell-vinduet og skrive Få hjælp. Dette vil åbne op for et omfattende overblik, der vil lære dig, hvad PowerShell er, og du vil forstå dets funktionalitet og struktur. Du kan også få adgang til internettet for mere avancerede hjælpefiler direkte gennem grænsefladen. Du kan downloade disse filer til senere brug. 

Men det er ikke slutningen på get-help kommandoen. Type: 

Få hjælp * 

PowerShell vil liste alle de cmdlet'er, du kan bruge på det tidspunkt. Listen vil sandsynligvis være enorm, og du behøver ikke at lære alle de viste cmdlets. Men du er velkommen til at læse dem og udforske alle de muligheder, du har.

Type:

Få hjælp

Du behøver ikke parenteserne, skriv blot navnet på den kommando, du er interesseret i, og denne cmdlet vil give dig de grundlæggende oplysninger om det. For en endnu mere detaljeret forklaring af en kommando, skriv:

Få hjælp -Fuld

Hvis du har brug for et eksempel på, hvordan du bruger en bestemt kommandotype:

Få hjælp -Eksempel

2. Hent-kommando

Vil du hurtigt hente information om en bestemt kommando eller et sæt kommandoer? Get-Command-cmdlet'en vil gøre det for dig. Der er så mange muligheder inden for Get-Command, men du, som en grundlæggende bruger af PowerShell, behøver ikke de fleste af dem. Her er nogle grundlæggende cmdlets, der vil være nyttige, især når du navigerer i de tilgængelige kommandoer.

Hvis du ønsker en liste over specifikke cmdlets af samme type:

Hent-kommando -

For eksempel vil denne komplekse sætning beordre din computer til at vise en liste over alle tilgængelige kommandoer af cmdlet-type og sortere dem i alfabetisk rækkefølge efter substantivet i deres navn:

Hent-kommando - Indtast Cmdlet | Sort-Objekt -Ejendomsnavneord| Format-Tabel -GruppeBy Navneord

Dette er et glimrende eksempel på en mere kompleks kommando, der får PowerShell til at udføre en kompliceret opgave. Når du først forstår syntaksen, vil du se, at brugen af ​​PowerShell ofte er den hurtigste og nemmeste til at få nogle ting gjort på din computer.

Hvis du vil finde en bestemt kommando ved dens navn, skal du blot skrive:

Hent-kommando -Navn

Hvis du ikke kender det nøjagtige navn på den kommando, du leder efter, men du kender en del af navnet, kan du skrive: 

Hent-kommando -Navn -Brug FuzzyMatching

Denne cmdlet vil pålægge din computer at finde kommandoer, der matcher det, du har skrevet i Mark. Du kan også bruge denne cmdlet, hvis du er tilbøjelig til stavefejl og ikke vil være generet med at rette dig selv hele tiden.

3. Hent-indhold

Hvis du vil se indholdet af en fil, skal du bruge cmdlet'en Get-Content. Du bliver nødt til at angive den nøjagtige placering af den nævnte fil, så din computer kan finde den.

I eksemplet ovenfor kan du se indholdet af en testtekstfil lavet til dette formål. Dette er en ligetil kommando, men hvis du ved, hvad den gør, kan du kombinere den med andre kommandoer og udføre virkelig kraftfulde opgaver gennem Windows PowerShell.

4. Få-proces

Get-Process cmdlet'en vil give dig information om aktuelt kørende processer på din computer. Du kan se hukommelsesforbruget, CPU-cyklusser, proces-id og andre attributter. 

Hvis du tilføjer navnet på processen til denne cmdlet, kan du se oplysningerne om en bestemt proces. For eksempel, hvis du ønsker information om Discord ansøgningsprocessen, skal du blot skrive Get-Process Discord.

Du kan starte eller stoppe processer gennem PowerShell ved blot at erstatte "Get"-præfikset for syntaksen. For at starte en proces, skriv:

Start-proces  

For at stoppe en proces, skriv:

Stop-proces

5. Få-service

Som systemadministrator kan du finde Get-Service cmdlet'en meget nyttig. Denne enkle cmdlet viser alle de tjenester, der i øjeblikket kører på dit system, og giver dig mulighed for at kontrollere dem. Det betyder, at du kan se alle de programmer, der i øjeblikket arbejder for at få din computer til at køre. 

Nu kan du bruge tjenestenavnet til at styre det. Brug kommandoer som f.eks Genstart-service at fjerne de frosne, Stop-Service at stoppe dem helt, og start-service for at starte dem igen.

6. Hent-vare

Hvis du har brug for et specifikt element, kan det være hurtigere at finde det gennem PowerShell end ved at bruge en søgelinje integreret i dit operativsystem. Det er især praktisk, hvis du kender placeringen af ​​den fil, du har brug for. Brug blot kommandoen på denne måde:

Hent-element C:

Dette vil give dig listen over filer på "C:" harddisken. Du kan være endnu mere specifik og søge i alle mapperne under brugerens profil eller gå dybere ind i mapperne "dokumenter" eller "downloads". For at gøre dette skal du skrive:

Get-Tem C:brugere *

Hvis du har brug for at hente et underordnet element fra en container, såsom en systemmappe, kan du bruge cmdlet'en Get-ChildItem. Denne kommando viser dig alle filerne og mapperne inde i den pågældende beholder. Som med Get-Item cmdlet'en skal du angive containerens sti.

For at slette elementer kan du erstatte "Hent"-suffikset med "Fjern". Dette giver dig mulighed for at slette alt, fra filer og mapper til registreringsdatabasenøgler og funktioner. Type Fjern-vare. Du kan udarbejde denne cmdlet og kun slette skjulte og "skrivebeskyttede" filer eller slette elementer fra specifikke mapper og undermapper.

7. Konverter Til-Html

Denne kommando hjælper dig med at konvertere et .NET-objekt til en HTML-fil, der kan vises i webbrowsere. Dette er en output cmdlet, hvilket betyder, at den fungerer godt sammen med andre cmdlets. Du skal blot tilføje det til slutningen af ​​andre cmdlets og inkludere en bestemt filsti. 

Hvis du f.eks. vil oprette en HTML-fil, der viser navnet, stien og firmaet for alle de aktuelle processer på en lokal computer, skal du skrive: 

Hent-proces | ConvertTo-Html -Ejendomsnavn, sti, virksomhed -Titel "Procesoplysninger" | Ud-fil filnavn.htm

Erstat filnavn.htm med et hvilket som helst filnavn, du ønsker.

For at åbne den oprettede fil skal du bruge Invoke-Item cmdlet plus . Indholdet skal ligne billedet nedenfor.

8. Sæt-udførelsespolitik

Hvis du vil køre lokale PowerShell-scripts, skal du ændre udførelsespolitikken for selve PowerShell. På Windows-computere er udførelsespolitikken altid begrænset, og du bliver nødt til at ændre den til RemoteSigned eller Unrestricted. På ikke-Windows-computere såsom Linux eller Mac er den typisk indstillet til Ubegrænset, og den kan ikke ændres. 

Hvis du vil lære mere om PowerShell-udførelsespolitikken, skal du blot skrive:

hjælp Set-ExecutionPolicy

PowerShell viser hjælpefilerne om udførelsespolitik på din computer eller giver dig besked, hvis der ikke er nogen. Men det vil også give dig et link, som du kan følge og læse om det online.

For at indstille politikken til RemoteSigned skal du blot skrive:

Set-Execution Policy Remote Signed

For at indstille den til Ubegrænset type:

Set-Execution Policy Ubegrænset

For at kontrollere den aktuelle indstilling for udførelsespolitikken skal du skrive: 

Hent-udførelsespolitik

Fordi udførelsespolitikker er en del af PowerShells sikkerhedsstrategier, vil den bede dig om bekræftelse af ændringen. Type Y kun hvis du er sikker på at du vil fortsætte.

9. Vælg-Objekt

Denne kommando bruges til at vælge objekter og sæt af objekter, unikke objekter og objekter på en bestemt position i en matrix. Der er forskellige parametre, som du kan bruge til at angive de objekter, du vil vælge. Blandt dem er egenskaber, numeriske værdier og specifikke inputobjekter. 

For at vælge objekter efter egenskabsattribut skal du angive attributterne såsom navn, ID eller CPU. Du kan endda gruppere attributterne, men du skal adskille dem med kommaer, når du skriver kommandoen. For at se Select-Object-cmdlet'en i handlingstype:

Hent-proces | Select-Object -Property ProcessName, Id, CPU

PowerShell viser alle de aktuelle processer og deres attributter, som vist nedenfor.

Du kan nu bruge kommandoen -EpandProperty til at få detaljerede oplysninger om den specifikke attribut. Hvis du ønsker detaljer om egenskaben Modules for ProcessName-attributtens type:

Get-Process Chrome | Select-Object -Property ProcessName -ExpandProperty Modules | Format-liste

Kommandoens "Format-liste"-output er der for at gøre resultaterne formaterede og læsbare.

10. Eksport-CSV

Nogle gange resulterer PowerShell-kommandoerne i lange lister, som vi så med Get-Command-cmdlet'en. Lange lister og masser af information er svære at læse, og du vil have det på en mere organiseret måde. For at gøre dette skal du eksportere alle data til en CSV-fil. Du kan gøre dette direkte i PowerShell ved at bruge Export-CSV-funktionen.

For eksempel så vi, at cmdlet'en Get-Command giver os en lang liste over alle tilgængelige cmdlet'er, vi kan bruge i PowerShell på det tidspunkt. Du kan kombinere Get-Command og Export-CSV for at oprette en detaljeret liste med kommaseparerede værdier såsom navn, kilde og version, som apps som Excel kan genkende. 

For at gøre dette skal du skrive følgende kommando i PowerShell-kommandoprompten, men bemærk, at du kan indstille enhver sti, du ønsker, og du kan navngive din fil anderledes:

Hent-kommando | Vælg Navn, Kilde, Version | eksport-csv D:AllCommands.csv

Du kan nu åbne listen i Excel, og du bør se noget, der ligner det følgende billede.