Tìm kiếm ↓↓↓

Sử dụng PowerShell bật hoặc tắt tính năng của Windows

Trong chuyên mục quản lý hôm nay này tôi sẽ trình bày cách sử dụng Windows Powershell bật hoặc tắt tính năng của Windows. Đây là chủ đề tương đối phức tạp và hơi dài nhưng nó lại rất thú vị cho những bạn nào muốn tìm hiểu sâu về cấu hình hệ thống. Chủ đề sẽ được trình bày bao gồm 3 phần chính sau đây:

  1. Xem trạng thái của tính năng
  2. Bật hoặc tắt tính năng
  3. Tạo powershell csript
Dưới đây là chi tiết từng phần:

Phần 1. Xem trạng thái của tính năng đã được bật hay hay đã bị tắt

1. Xem tất cả tính năng của Windows


-PowerShell



Get-WindowsOptionalFeature -Online | Select FeatureName,State


- Command Prompt



Powershell -ExecutionPolicy Bypass -Command "& Get-WindowsOptionalFeature -Online | Select FeatureName,State"


2. Xem tính năng đã được kích hoạt (Enabled)


-PowerShell


Get-WindowsOptionalFeature -Online | Where State -eq 'Enabled' | Select FeatureName,State


- Command Prompt



Powershell -ExecutionPolicy Bypass -Command "& Get-WindowsOptionalFeature -Online | Where State -eq 'Enabled' | Select FeatureName,State"


3. Xem tính năng chưa được kích hoạt (Disabled)


-PowerShell


Get-WindowsOptionalFeature -Online | Where State -eq 'Disabled' | Select FeatureName,State


- Command Prompt


Powershell -ExecutionPolicy Bypass -Command "& Get-WindowsOptionalFeature -Online | Where State -eq 'Disabled' | Select FeatureName,State"


Phần 2. Bật hoặc tắt tính năng

1. Bật tính năng

-PowerShell


Enable-WindowsOptionalFeature -Online -FeatureName 'FeatureName' -All -NoRestart


- Command Prompt


Powershell -ExecutionPolicy Bypass -Command "& Enable-WindowsOptionalFeature -Online -FeatureName 'FeatureName' -All -NoRestart"


2. Tắt tính năng

-PowerShell


Disable-WindowsOptionalFeature -Online -FeatureName 'FeatureName' -All -NoRestart


- Command Prompt


Powershell -ExecutionPolicy Bypass -Command "& Disable-WindowsOptionalFeature -Online -FeatureName 'FeatureName' -All -NoRestart"


Phần 3. Tạo PowerShell Script

1. Tạo Script tắt tính năng đã được kích hoạt Disable-WindowsOptionalFeature.ps1


Soạn nội dung bên dưới vào notepad và lưu lại với tên ví dụ Disable-WindowsOptionalFeature.ps1 định dạng All files và Econding-ANSI


# Disable-WindowsOptionalFeature.ps1

# Created by Nguyen Tuan



If (!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]"Administrator")) {

Start-Process powershell.exe "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`" $args" -Verb RunAs

Exit

}



Function Main-menu()

{

    $index=1

$Features=Get-WindowsOptionalFeature -Online | ? State -eq 'enabled' | Select FeatureName

#return entire listing of features

   Write-Host "ID`t Feature Name"

    Write-Host ""

foreach ($Feature in $Features)

{

Write-Host " $index`t $($Feature.FeatureName)"

$index++

}

   

    Do

    {

        Write-Host ""

        $IDs=Read-Host -Prompt "For disable each feature please select ID and press enter"

    }

    While($IDs -eq "")

   

#check whether input values are correct

try

{

[int[]]$IDs=$IDs -split ","

}

catch

{

Write-Host "Error:" $_.Exception.Message

}

foreach ($ID in $IDs)

{

#check id is in the range

if ($ID -ge 1 -and $ID -le $Features.count)

{

$ID--

#Disable each feature

$FeatureName=$Features[$ID].FeatureName



            Disable-WindowsOptionalFeature -Online -FeatureName $FeatureName -NoRestart

            pause

            cls

            Main-menu

}

else

{

            Write-Host ""

            Write-warning -Message "wrong ID"

            Write-Host ""

            pause

            cls

            Main-menu

}

}

}

Main-menu


Khi tạo xong chuột phải tập tin script vừa tạo chọn Run with PowerShell. Nếu muốn tắt tính năng nào chọn ID của tính năng ví dụ 24 nhấn enter

2. Tạo Script bật tính năng chưa được kích hoạt Enable-WindowsOptionalFeature.ps1


Soạn nội dung bên dưới vào notepad và lưu lại với tên ví dụ Enable-WindowsOptionalFeature.ps1 định dạng All files và Econding-ANSI


# Enable-WindowsOptionalFeature.ps1

# Created by Nguyen Tuan



If (!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]"Administrator")) {

Start-Process powershell.exe "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`" $args" -Verb RunAs

Exit

}



Function Main-menu()

{

$index=1

$Features=Get-WindowsOptionalFeature -Online | ? State -eq 'disabled' | Select FeatureName

#return entire listing of features

   Write-Host "ID`t Feature Name"

    Write-Host ""

foreach ($Feature in $Features)

{

Write-Host " $index`t $($Feature.FeatureName)"

$index++

}

   

    Do

    {

        Write-Host ""

        $IDs=Read-Host -Prompt "For enable each feature please select ID and press enter"

    }

    While($IDs -eq "")

   

#check whether input values are correct

try

{

[int[]]$IDs=$IDs -split ","

}

catch

{

Write-Host "Error:" $_.Exception.Message

}



foreach ($ID in $IDs)

{

#check id is in the range

if ($ID -ge 1 -and $ID -le $Features.count)

{

$ID--

#Enable each feature

$FeatureName=$Features[$ID].FeatureName



Enable-WindowsOptionalFeature -Online -FeatureName $FeatureName -All -NoRestart

            pause

            cls

            Main-menu

}

else

{

Write-Host ""

            Write-warning -Message "wrong ID"

            Write-Host ""

            pause

            cls

            Main-menu

}

}

}

Main-menu


Khi tạo xong chuột phải tập tin script vừa tạo chọn Run with PowerShell. Nếu muốn bật tính năng nào chọn ID của tính năng ví dụ 24 nhấn enter

Phổ biến trong tuần

Tin Tức