it-swarm-tr.com

PowerShell'de yönetici ayrıcalıkları kazanmak

Windows Vista makinemde yalnızca bir hesabım var ve bu kullanıcının yönetici ayrıcalıkları var. Ancak, belirli bir işlemi öldürmek için PowerShell içinde bir komut yürütmeye çalıştığımda, "Erişim reddedildi" iletisiyle karşılaşıyorum. Nasıl yönetici olabilirim?

29
Brian

Bunu yapmanın en kolay yolu, Powershell'i yönetim simgeleriyle başlatmaktır. Bunu yapmak için, Powershell'e (veya kısayoluna) sağ tıklayın ve "yönetici olarak çalıştır" a tıklayın. Alternatif olarak elevate.cmd kullanabilirsiniz.

14
Knox

Powershell v2 yolu, Microsoft'a göre , kısayola sağ tıklamak ve Yönetici Olarak Çalıştır seçeneğini belirlemektir.

Ve Powershell penceresinde yükseltmek için:

start-process powershell –verb runAs

Bir cmd.exe toplu iş dosyasından, kısayolundan veya Çalıştır satırından (tekrar tekrar) şöyle bir şey görünecektir:

powershell "start-process powershell -verb runas"
26
Nathan Hartley

Bu yeni bir powershell örneği açar:

function Run-Elevated ($scriptblock)
{
  # TODO: make -NoExit a parameter
  # TODO: just open PS (no -Command parameter) if $scriptblock -eq ''
  $sh = new-object -com 'Shell.Application'
  $sh.ShellExecute('powershell', "-NoExit -Command $scriptblock", '', 'runas')
}

Bununla ilgili sorunlar olduğunu umuyorum - özellikle, scriptblock'unuzun çıktısını arama komut dosyasında geri alamazsınız. Öte yandan, yeni PS örneğinde orada olacak, böylece orada hackleyebilirsiniz.

10
user2278

her zaman PowerShell'i yönetici ayrıcalıklarıyla çalıştırmak istiyorsanız, PowerShell kısayolunu sağ tıklatıp "Kısayol" sekmesindeki "Gelişmiş ..." düğmesini tıklayıp "Yönetici Olarak Çalıştır" ı seçebilirsiniz. ".

5
Ryan Fisher

Kolay yol ...

Herhangi bir PowerShell oturumundan istediğiniz zaman yönetici ayrıcalıklarını almak için bir easy command ayarı bu şekilde yapılır!

Adım 1: PowerShell Profilinizi açın. (Not defteri eksikse dosya oluşturmasına izin verin.)

notepad "$profile"

Adım 2: Aşağıdaki kodu o dosyanın herhangi bir yerine yapıştırın. (Çalıştırmak istediğiniz PowerShell sürümüne bağlı olarak seçim yapın ve profilin sürüme özgü olduğunu unutmayın; böylece paralel olarak çalıştırırsanız PowerShell sürümlerinizin her biri için bunu yapabilirsiniz).

# PowerShell 5
function GoAdmin { Start-Process PowerShell –Verb RunAs }

# PowerShell Core
function GoAdmin { Start-Process pwsh –Verb RunAs }

Adım 3: PowerShell'i yeniden başlatın. Komut artık kalıcı olarak kullanılabilir.

Adım 4: Her zaman yönetici olmak istediğinizde, GoAdmin yazmanız yeterlidir (ve doğru durumu yazmak konusunda endişelenmeyin; PS işlevleri aslında büyük/küçük harfe duyarlı değildir). Tabii ki işlevi Elevate veya başka bir şey gibi adlandırabilirsiniz, ancak çakışma riski istemedim, bu yüzden hiçbir zaman çakışma olmayacağından emin olmak için herhangi bir kısa çizgi olmadan iki kelimelik bir deyim olarak adlandırdım. PowerShell'in kendi özellikleri.

Yönetici penceresinin ayrı bir Kabukta açıldığını unutmayın. Orijinal Kabuğu kapatabilir veya açık tutabilirsiniz. Yönetici çalışmanız ortam değişkenleri ekleme/değiştirme gibi "büyük" bir şey yaparsa, kullanıcı Kabuğunuz (yönetici olmayan) ortamını yeniden yüklemek ve değişiklikleri almak için refreshenv yazabilir. (Düzenle: refreshenv öğesinin büyük Chocolatey paket yöneticisi tarafından sağlandığını keşfetti. Update-SessionEnvironment yerine Chocolatey'niz yoksa.)

Temel olarak, sadece GoAdmin, paketleri yüklemek gibi yönetici şeylerini yapın ( https://chocolatey.org/ elbette!) Ve sonra yönetici penceresini kapatın ve refreshenv kullanıcı Kabuğunuzda! Voila.

1
Mitch McMabers