Lägg till eller ta bort Windows-funktioner via kommandotolken eller PowerShell

2019-06-17 15:08:41
Huvud·Windows·Lägg till eller ta bort Windows-funktioner via kommandotolken eller PowerShell

Windows-operativsystemet har hundratals funktioner och funktioner tillgängliga att använda. Medan de allra flesta av dessa Windows-funktioner är tillgängliga eller aktiverade och redo att gå från installation, är vissa inte och behöver kopplas på manuellt. De flesta av dessa extrafunktioner är inte till någon större nytta för vanliga användare, men kan vara värdefulla för avancerade och affärsanvändare. Det finns ett enkelt sätt att komma åt och se vilka funktioner som finns genom att gå till Kontrollpanelen.

När du går till program och funktioner och väljer "Slå på eller stänga av Windows-funktioner" eller skriva OptionalFeatures i Start visar vilka funktioner som för närvarande är installerade och vad som är tillgängliga att installera. Från det här fönstret kan du aktivera eller inaktivera funktioner som .NET Framework, Internet Explorer, Spel, XPS-komponenter, Hyper-V, Telnet och till och med Windows Media Player eller Media Center.

Om det finns en funktion som du vill installera markerar du bara rutan och klickar på OK, om du avmarkerar bort funktionen från systemet. Även om det inte kommer att göra någon stor skillnad i datorns prestanda eller körning, är det meningsfullt att stänga av saker du vet aldrig kommer att användas. Färre installerade funktioner minskar risken för att saker går fel. Den här metoden fungerar bra men om du vill ha mer avancerad kontroll för att manipulera funktionerna på distans eller från partier eller skript behöver du ett annat sätt. Tack och lov erbjuder Windows två lösningar för att göra detta genom att använda antingen kommandoraden eller från PowerShell. Här visar vi dig hur.

Visa, lägg till eller ta bort Windows-funktioner via kommandotolken

Det är lätt att få information om, samt installera eller ta bort funktioner från kommandoraden. Detta är möjligt med hjälp av verktyget DISM (Deployment Image Servicing and Management). Det används ofta för att ändra eller injicera drivrutiner eller Windows-uppdateringar i WIM-bilder. DISM-verktyget finns i Windows 7, 8.1 och 10 så att följande kommandon kan användas i något av dessa operativsystem.

Se till att öppna en kommandotolken med administrativa behörigheter. För att göra det, gå till Start, skriv cmd och tryck på Ctrl + Shift + Enter eller högerklicka på Start och välj Kommandotolken (Admin). Om du får ett “Error: 740” som kör DISM, betyder det att kommandotolken inte är i administratörsläge.

För att få en fullständig lista över tillgängliga funktioner som kan vara eller är installerade för närvarande på systemet:

DISM / online / get-features / format: tabell | Mer

Online- argumentet berättar för DISM att det lokala systemet är målet. Format: tabell är valfritt och visar listan i ett mer läsbart tabellformat. Ju mer i slutet är också valfritt och delar upp listan i sidor. Tryck på Mellanslag för att visa varje efterföljande sida. För att mata ut listan direkt till en textfil kan du lägga till något som "> C: \ dism_Features.txt" i slutet av raden.

Om du vill filtrera listan för att visa just aktiverade eller inaktiverade funktioner, ändra kommandot DISM något. Observera att de aktiverade och inaktiverade orden är skiftlägeskänsliga och måste börja med en stor bokstav eller ingenting kommer att visas.

DISM / online / get-features / format: tabell | hitta “Enabled” | Mer

DISM / online / get-features / format: tabell | hitta "Inaktiverad" | Mer

Det är möjligt att få mer detaljerad information om en vald funktion.

DISM / online / get-featureinfo / featurename: [funktionsnamn]

Namnet på funktionen är skiftlägeskänslig och du måste skriva in den exakt som listad, inklusive eventuella mellanslag. Informationen visar en beskrivning av funktionen och om en omstart kan behövas. Anpassade egenskaper kan också visa en Microsofts URL-adress för support sida där du kan hitta mer information.

Att aktivera eller inaktivera en funktion är ganska enkelt. Funktionsnamnet är återigen känsligt för skiftläge och mellanrum.

DISM / online / disable-feature / featurename: [funktionsnamn]

DISM / online / enable-feature / featurename: [funktionsnamn]

Att utföra flera operationer samtidigt på samma linje är möjligt. Detta görs genom att lägga till / FeatureName: [funktionsnamn] en eller flera gånger till kommandot. DISM är ett kraftfullt verktyg, för lite mer teknisk läsning om vad den kan göra finns det ett referensdokument på Microsoft Technet.

Visa, lägg till eller ta bort Windows-funktioner via PowerShell

PowerShell är Microsofts skriptspråk baserat på .NET Framework. Det används främst för att administrera och konfigurera lokala och fjärrsystem och du kan också använda den för samma uppgift att visa, lägga till eller ta bort valfria Windows-funktioner. Det är möjligt att använda DISM-verktyget direkt i Powershell men det finns också en uppsättning integrerade kommandon som fungerar på liknande sätt.

PowerShell-valfria funktioner i Windows 8.1 och 10

Nyare versioner av Windows har funktionen att visa inbyggda funktioner. Se till att köra PowerShell som administratör, annars kommer kommandona inte att fungera. För att se listan över tillgängliga funktioner i systemet.

get-windowsoptionalfeature -online | ft | Mer

Liksom DISM, berättar online- argumentet kommandot att arbeta på det lokala systemet medan den valfria ft visar resultaten i en tabell och mer delar listan i sidor. För att filtrera listan till aktiverade eller inaktiverade funktioner.

get-windowsoptionalfeature -online | där statliknande funktionshindrade * | ft | Mer

get-windowsoptionalfeature -online | där tillståndsliknande aktiverat * | ft | Mer

Var- uttalandet kontrollerar funktionens tillstånd och filtrerar listan i enlighet därmed. Anledningen till att använda -liknande och * jokertecken är vissa funktioner som inte matchar exakt orden. Till exempel har NetFx3 ett standardläge för DisabledWithPayloadRemoved vilket innebär att funktionen är inaktiverad och dess filer finns inte i systemet. Som ett resultat kommer bara "-liknande inaktiverade" inte att visa det i listan.

Med PowerShell är det inget problem att använda ett liknande kommando för att filtrera listan med specifika sökord. Exemplet nedan visar bara de funktioner som har ordet "hyper-v" i deras namn.

get-windowsoptionalfeature -online | där featurnamn-liknande * hyper-v * | med

Så här får du mer detaljerad information om en specifik funktion:

get-windowsoptionalfeature -online -featurename [funktionsnamn]

Detta liknar mycket DISM: s argument om get-featureinfo även om funktionsnamn inte är skiftlägeskänsliga här. Du kan också använda jokertecken för att lista flera funktioner samtidigt. Följande kommando får information om alla funktioner med "media" i namnet.

get-windowsoptionalfeature -online -featurename * media *

Lägga till eller ta bort en funktion är en ganska enkel process:

enable-windowsoptionalfeature -online -featureName [funktionsnamn] -all

disable-windowsoptionalfeature -online -featureName [funktionsnamn]

Argumentet valfritt- alla lägger automatiskt till alla andra funktioner som krävs för att den funktion du specificerade ska fungera. Genom att använda två kommandon på samma rad kan du aktivera eller inaktivera flera funktioner samtidigt

get-windowsoptionalfeature -online -featurename * hyper-v * | enable-windowsoptionalfeature -online -norestart

Ovanstående kommando filtrerar först alla funktioner med "Hyper-V" i deras namn. Sedan rörs dessa funktionsnamn till att aktivera kommandot för att aktiveras en efter den andra utan att starta om. Detta gör att sju Hyper-V-funktioner aktiveras i Windows 10 med en enda rad.

Liksom andra Powershell-kommandon är funktionsnamn för att aktivera eller inaktivera inte skiftlägeskänsliga.

PowerShell-valfria funktioner i Windows 7

Förutom vanliga DISM-kommandon har Windows 7: s PowerShell inte förmågan att ändra valfria funktioner. För det måste du ladda ner en modul från tredje part som lägger till funktionen.

1. Ladda ner PSClientManager från Codeplex och installera det. Öppna sedan PowerShell med administrativa behörigheter, se till att använda rätt 32-bitars / 64-bitarsversion för ditt system.

2. Kör följande kommandon. Observera att det första kommandot bara behövs om du får ett fel om att köra skript är inaktiverat när du försöker köra det andra kommandot.

Set-ExecutionPolicy RemoteSIGN (tryck på Enter i snabbfrågan)

Import-modul PSClientManager

PowerShell kan nu bearbeta funktionskommandon, de liknar i stort sett kommandona som finns i nyare operativsystem. Så här får du en lista över alla funktioner:

Get-ClientFeature | Mer

Använd följande för att filtrera en namnsträng eller bara visa aktiverade / inaktiverade funktioner:

Get-ClientFeature-name * string *

Get-ClientFeature -stat [inaktiverat / aktiverat] | Mer

Att lägga till och ta bort funktioner med PSClientManager-modulen är igen ganska enkelt:

Add-ClientFeature -Name [funktionsnamn]

Ta bort-ClientFeature-Namn [funktionsnamn]

Medan Get-ClientFeature inte är skiftlägeskänsligt för att visa funktionerna, är det att lägga till och ta bort funktioner. Se till att höljet och avståndet är korrekt.

PSClientManager har också ett annat kommando Get-ClientFeatureInfo som visar detaljerna för en vald funktion. Tyvärr kunde vi inte få det att fungera och det fortsatte att visa ett tomt resultat.

Redaktionen