Bagaimana cara mengaktifkan atau menonaktifkan fitur windows menggunakan PowerShell atau commandline di Windows 7?

11

Saya telah menulis skrip sysocmgrdi Windows XP, servermanagercmddi server 2008, dan sekarang saya menemukan bahwa saya harus menggunakan modul PowerShell baru servermanageruntuk menginstal fitur di Server 2008 R2 dan jadi saya berharap bahwa saya akan menggunakan modul yang sama di Windows 7 tetapi tidak sana.

Bagaimana saya bisa menginstal fitur Windows menggunakan baris perintah atau PowerShell di Windows 7?

Chris Magnuson
sumber
Waktu akhirnya menyediakan cara menggunakan PowerShell, jawaban saya di bawah ini.
MDMoore313

Jawaban:

6

Untuk pengalaman PowerShell yang sebenarnya , Anda harus mengunduh Windows AIK for 8.0 dan menggunakan dism module. Ditemukan di

C:\Program Files (x86)\Windows Kits\8.0\Assessment and Deployment Kit\Deployment Tools\<arch>\DISM

dan Anda bisa mengarahkan PowerShell ke folder itu dengan

Import-Module C:\Program Files (x86)\Windows Kits\8.0\Assessment and Deployment Kit\Deployment Tools\<arch>\DISM

Pastikan Anda mengganti <arch> dengan arsitektur mesin PowerShell sedang berjalan. Folder DISM itu bahkan dapat disalin dan didistribusikan kembali ke mesin jika perlu (berbicara tentang fungsionalitas, saya tidak tahu apakah mendistribusikan ulang benar-benar diizinkan oleh Microsoft).

Perintah khusus untuk membuang fitur opsional Windows adalah

Get-WindowsOptionalFeature -Online | where FeatureName -eq mediacenter

Itu akan mengembalikan Microsoft.DISM.Commands.BasicFeatureObject, seperti yang terlihat di sini . Dari sana, Anda dapat mengatur stateproperti menjadi dinonaktifkan, seperti

$(Get-WindowsOptionalFeature -Online | where FeatureName -eq mediacenter).state = 
    [Microsoft.DISM.Commands.FeatureState]::Disabled

dan bye bye pusat media. Tentu saja, ini harus dijalankan dari prompt yang ditinggikan, dan -Onlinesaklar mengacu pada Windows yang sedang berjalan, sebagai lawan dari gambar offline.

Juga, modul ini membutuhkan WMF 3.0 dan yang membutuhkan. NET 4.0, hanya FYI.

MDMoore313
sumber
1
Saya dapat berjalan Enable-WindowsOptionalFeature -FeatureName NetFx3 -Onlinedi mesin Windows 8.1 tanpa menginstal AIK. Namun, saya sudah menginstal pratinjau WMF5; mungkin itu menyediakannya? Modul ini diambil dariC:\windows\system32\windowspowershell\v1.0\Modules\Dism\Dism.psm1
bshacklett
4

Mencoba menjalankan PowerShell dari Windows 7/8 hanya akan membuat Anda mendapatkan ini:

Get-WindowsFeature: Target cmdlet yang ditentukan tidak boleh sistem operasi berbasis klien Windows.

dism adalah satu-satunya cara saya menemukan itu berfungsi.

n1nj4
sumber
2

Tambahkan fitur ServerManager secara manual. Kemudian Anda dapat menambahkan servermanager-module:

import-module servermanager

dapatkan-fitur windows


sumber
1
bagaimana Anda menambahkan fitur ServerManager secara terpisah?
fschwiet
2
Ini akan bekerja untuk Windows 2008R2 dan yang lebih baru, tetapi tidak untuk Windows 7.
Trondh
2
ocsetup.exe /?

Selain menghapusnya tampaknya Anda juga dapat menggunakan ocsetup yang diinstal secara default pada Windows Vista dan Windows Server 2008. Jika Anda mencari untuk skrip sesuatu yang bekerja di ketiga ini maka ini mungkin akan menjadi cara untuk pergi.

Chris Magnuson
sumber
-1

Untuk bagian Powershell, buka prompt 'Windows Powershell Modules' dan masuk

PS1> Add-WindowsFeature [nama fitur]

misalnya

Tambah-WindowsFeature SMTP-Server

Get-WindowsFeature memperlihatkan kepada Anda nama-nama semua fitur yang tersedia

pengguna25572
sumber
1
Saya cukup yakin ini hanya berfungsi pada Windows Server 2008 R2.
Jeffery Hicks
Jeffery benar, ini tidak bekerja di windows 7 secara default. Jika Anda tahu cara untuk membuatnya bekerja, saya ingin tahu.
Chris Magnuson
-1

Anda bisa menggunakan sesi jarak jauh dari Windows 7 ke kotak Windows Server 2008 R2 dan menjalankan Add-WindowsFeature. Saya belum dapat menemukannya di Win7 bahkan dengan RSAT diinstal.

Jeffery Hicks
sumber
1
Bukankah itu menambahkan fitur ke kotak Windows Server 2008 R2 dan tidak ke instance Windows 7 lokal? Jika tidak tolong jelaskan.
Chris Magnuson