Benim test.bat
adında bir toplu iş dosyam var. Aşağıdaki talimatları test.bat
dosyasında çağırıyorum:
start /min powershell.exe %sysdrive%\testScripts\testscript1.ps1
Bunu komut isteminden çalıştırdığımda, test komut dosyam başarıyla çalışıyor. Yönetici olarak çalıştırmak istiyorum (sanki bir masaüstü kısayolu oluşturmuşum ve yönetici olarak çalıştırmışım gibi. Herhangi bir kullanıcı adı veya parola istememeli).
Yukarıdaki test.bat
dosyasına /elevate
ve /NOUAC
parametrelerini eklemeyi denedim ama olmadı. Bu sorunu nasıl çözebilirim?
Manuel olarak nasıl yapılacağını biliyorum, ancak bunun komut isteminden yürütülmesini istiyorum.
(Yazan Marnix Klooster): ...herhangi bir ek araç kullanmadan, Süper Kullanıcı sorusuna bir yanıt Yükseltilmiş haklarla komut satırından program nasıl çalıştırılır'de önerilenler gibi).
Bunu dene:
runas.exe /savecred /user:administrator "%sysdrive%\testScripts\testscript1.ps1"
Şifreyi ilk seferinde kaydeder ve bir daha sormaz. Belki yönetici şifresini değiştirdiğinizde tekrar sorulabilir.
Bu TechNet makalesine bakın: Runas komut belgeleri
Komut isteminden:
C:\> runas /user:<localmachinename>\administrator cmd
Ya da bir etki alanına bağlıysanız:
C:\> runas /user:<DomainName>\<AdministratorAccountName> cmd
Bunu yapmanın yolu psexec -h
gibi görünüyor:
-h If the target system is Windows Vista or higher, has the process
run with the account's elevated token, if available.
Bu da... Sysinternals - PsExec'deki çevrimiçi belgelerde listelenmemiş gibi görünüyor.
Ama benim makinemde çalışıyor.