在 python 中使用 subprocess.run 以管理员身份运行进程 [英] Run process as admin with subprocess.run in python

查看:36
本文介绍了在 python 中使用 subprocess.run 以管理员身份运行进程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法将一些 runas=True arg 传递给 python 中的 subprocess.run 函数?我想以管理员身份运行一个进程(提升它).感谢您的回答:)

Is there a way of passing some runas=True arg to a subprocess.run function in python? I want to run a process as admin (elevate it). Thanks for answers :)

使用 Windows 操作系统.

Using Windows OS.

推荐答案

由于没有指定OS,我以MS Windows OS为例

since OS is not specified, I will take the example of MS Windows OS

Windows 有一个命令行实用程序Run as",可以用作

Windows has a command line utility "Run as", which can be used as

runas [{/profile |/noprofile}] [/env] [{/netonly |/savecred}] [/smartcard] [/showtrustlevels] [/trustlevel]/user:<UserAccountName><程序名><PathToProgramFile>"

供进一步参考https://technet.microsoft.com/en-us/library/cc771525.aspx

您可以在下面的代码中使用它

You can use this in code like below

import subprocess as sp

prog = sp.Popen(['runas', '/noprofile', '/user:Administrator', 'NeedsAdminPrivilege.exe'],stdin=sp.PIPE)
prog.stdin.write('password')
prog.communicate()

这篇关于在 python 中使用 subprocess.run 以管理员身份运行进程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆