Sonntag, der 18. August 2019 - 18:14 Uhr

Powershell: Skript als Administrator ausführen – The right way

erstellt am: 31.05.2019 | von: DevLink | Kategorie(n): Tutorials | Keine Kommentare

Wer seine Skripte hin und wieder gerne als Admin ausführen möchte bekommt mehrere Lösungen über die Suchmaschine. Allerdings bieten diese Lösungen nur halbwegs komfortable Lösungen.

Die Probleme über die ich gestolpert bin waren zB: Die normal geöffnete Powershellkonsole blieb offen, der Pfad war System32 usw..

Also begab ich mich auf die Suche nach einer Lösung, mit der ich ein Skript als Admin ausführen kann, ein neuer Prozess gestartet wird, der alte beendet und die Location in die geändert wird, in der sich das aktuell ausgeführte Skript befindet.

function Check-Admin {
	$currentUser = New-Object Security.Principal.WindowsPrincipal $([Security.Principal.WindowsIdentity]::GetCurrent())
	$currentUser.IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator)
}
if ((Check-Admin) -eq $false)  
{
	Start-Process powershell.exe -Verb RunAs -ArgumentList ('-noprofile -noexit -file "{0}" -elevated' -f ($myinvocation.MyCommand.Definition))
	Stop-Process -Id $PID
}

$scriptDirectory = Split-Path $MyInvocation.MyCommand.Path
Set-Location $scriptDirectory

#Enter Code here.


, ,

Keine Kommentare


Bis jetzt noch keine Kommentare

Einen Kommentar abgeben

Themen:

51 Artikel in 7 Kategorien:

  • Backup (2)
  • Exchange Server (16)
  • Linux (6)
  • Microsoft Server (6)
  • Tutorials (8)
  • Virtualisierung (2)
  • Windows (11)