Parancsok futtatása batch fájlból admin jogokkal

Parancsok futtatása batch fájlból admin jogokkal
2019-05-07T23:07:46+02:00
2019-05-11T18:16:13+02:00
2022-12-05T23:45:42+01:00
Sabala
Sziasztok! Programozási tudásom igen csekély, ezért fordulok hozzátok, hosszas guglizás után!
Szeretnék egy batch fájlból lefuttatni egy parancsot parancssorban admin jogokkal, ezt hogyan tudom megtenni?
A másik hasonló feladat lenne, csak ott egy power shell-es parancsot kéne lefuttatni power shellben szintén batch fájlból, admin jogokkal ahhoz, hogy működjön.
A parancssoron feladat esetén ezt a parancsot kéne lefuttatni: "psshutdwon -d"
Ha letöltöm a microsoft PSTools csomagját, és a parancssort admin jogokkal futtatva elnavigálok a letöltött mappába, beütöm a parancsot, akkor ennek segítségével 20 másodperc múlva alvó módba a teszi a gépemet, ezt szeretném egy batch fájlra kattintással megoldani.
A power shell-es feladat esetén hosszabb kódot kéne lefuttatnom. Szintén ha én nyitom meg a power shellt rendszergazdaként és beírom ezt a kódot, megcsinálja amit kell, ezt is szeretném egy kattintásra lefuttatni. A kód a power shellhez (ez csupán annyit csinál, hogy minden, az aktuális dátumanál 7 nappal öregebb fájlt töröl a lomtárból): 
$Shell = New-Object -ComObject Shell.Application
$Global:Recycler = $Shell.NameSpace(0xa)
Foreach($item in $Recycler.Items())
{
$DeletedDate = $Recycler.GetDetailsOf($item,2) -replace "\u200f|\u200e",""
$dtDeletedDate = get-date $DeletedDate
If($dtDeletedDate -lt (Get-Date).AddDays(-7))
{
Remove-Item -Path $item.Path -Confirm:$false -Force -Recurse
}#EndIF
}#EndForeach item
Kérlek, ha van megoldás a "problémámra", segítsetek.
Mutasd a teljes hozzászólást!
Szia,

Arra figyelj, hogy az -Argumentlist után ne legyen sortörés, szóval egy sorban legyen az egész:

Start-Process powershell -Argumentlist ‘-noprofile -file "D:\Egyebek\powershell\code.ps1"’ -verb RunAs
Leteszteltem most mégegyszer, és nekem működik!
Mutasd a teljes hozzászólást!

  • Szia,

    A powershell scripthez csinálj egy másik scriptet ami az eredetit hívja meg:

    Start-Process powershell -Argumentlist ‘-noprofile -file “A SCRIPTED ELERESI UTJA”’ -verb RunAs
    A bat filet hasonlóképpen hívnám meg, csak psexec-kel:

    psexec -u administrator -s -d cmd.exe /c “A BAT FILE ELERESI UTJA”
    Mutasd a teljes hozzászólást!
  • Szia, köszönöm a választ!
    Az alvó módos dolgot sikerült megoldanom kacifántosan, viszont a hosszú kódos power shell szkripttel nem boldogulok úgy ahogy írtad. Nem teljesen értem, ha a 
    Start-Process powershell -Argumentlist
    '-noprofile -file "D:\Egyebek\powershell\code.ps1"' -verb RunAs
    parancsokkal mentek le egy .ps1 szkriptet amiben meghívom az erdeti szkriptet, csak egy felugró kék powershell ablakot látok, ami eltűnik egy másodperc alatt.
    Mutasd a teljes hozzászólást!
  • Szia,

    Arra figyelj, hogy az -Argumentlist után ne legyen sortörés, szóval egy sorban legyen az egész:

    Start-Process powershell -Argumentlist ‘-noprofile -file "D:\Egyebek\powershell\code.ps1"’ -verb RunAs
    Leteszteltem most mégegyszer, és nekem működik!
    Mutasd a teljes hozzászólást!
  • Szia!
    És valóban működik, örök hála! 
    Még egy apró segítsésget szeretnék kérni: hogyan tudom megoldani, hogy ez az egész lefusson automatán a feladatütemezőben? Beállítom, hogy legmagasabb jogokkal fusson, bejelentkezés után 1 perccel, viszont amikor a műveletek menüben beállítom a google-ön talált leírások alapján, akkor a megadott időben valóban megjelenik egy pillanatra a powershell ablak, de el is tűnik, a lomtár még sem törlődik ki. Pedig azt a szkriptet hívom meg a feladatütemezőben, amiben rendszergazdaként meghívja a lomtár törlést tartalmazó szkriptet. Ha ezt külön én indítom el, tényleg működik.
    Mutasd a teljes hozzászólást!
  • Szia,

    Próbáld meg SYSTEM felhasználóval futtatni a scheduled taskot
    Mutasd a teljes hozzászólást!
  • Köszönöm szépen a segítséget, megoldva mindkét feladat! 
    Mutasd a teljes hozzászólást!
  • Szia, nagyon szívesen! Örülök, hogy sikerült! :)
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd