我想以管理员身份运行批处理脚本,然后启动另一个批处理脚本(开始"标题" / b /等待),但具有当前用户的权限。 这可能吗?最好的方法是什么? 或者我如何获取当前登录的用户名?
答案 0 :(得分:0)
您想要的命令是runas
- 此命令使用当前登录用户的域和用户名运行batchfile(如果您需要特定用户,还可以对域和用户名进行硬编码):
runas /noprofile /user:%USERDOMAIN%\%USERNAME% C:\batchfile.bat
runas
命令需要外部程序作为最后一个参数,因此它不处理像dir或copy这样的内置命令。但您可以运行内置命令,例如copy with:
runas /noprofile /user:%USERDOMAIN%\%USERNAME% "cmd /c copy C:\source.txt C:\dest.txt"
你也可以像管理员那样运行:
runas /noprofile /user:Administrator "cmd /c copy C:\file.txt C:\Windows\System"
以下是更多信息:
https://www.windows-commandline.com/windows-runas-command-prompt/