如何使用python和powershell将用户添加到Windows 10

7qhs6swi  于 2023-08-05  发布在  Shell
关注(0)|答案(2)|浏览(134)

我尝试使用python脚本将用户添加到windows10,该脚本使用powershell添加用户。
以下是我到目前为止所做的:
main.py

import subprocess as sub
import os

username = testUser
passwds = passwordTest

command = """
$nusnm = """ + '"{}"'.format(username) + """
$nuspss = ConvertTo-SecureString """ + '"{}"'.format(passwds) + """ -AsPlainText -Force
New-LocalUser -Name $nusnm -Password $nuspss
Add-LocalGroupMember -Group "Administrators" -Member $nusnm
Get-LocalUser
"""
print(command)
exec = sub.Popen(["powershell","& {" + command + "}"])

字符串
如果有帮助的话,这是我基于的Powershell代码,它确实有效:

$nusnm = Read-Host -Prompt 'What would you like the name of the user to be? '
$nuspss = Read-Host -Prompt -AsSecureString 'Please input a new password for the user '
New-LocalUser $nusnm -Password $nuspss -Confirm
Add-LocalGroupMember -Group "Administrators" -Member $nusnm
Get-LocalUser


当我执行这段python代码时,我没有得到任何错误,但我也没有得到一个名为testUser的添加用户。我做错了什么?
任何帮助都非常感谢

6ie5vjzr

6ie5vjzr1#

发现我有一堆语法错误。我现在觉得自己真的很蠢。以下是如何通过python向windows 10添加用户的正确代码。
main.py

import subprocess as sub
import os

username = testUser
passwds = passwordTest

command = """
$nusnm = """ + '"{}"'.format(username) + """
$nuspss = ConvertTo-SecureString """ + '"{}"'.format(passwds) + """ -AsPlainText -Force
New-LocalUser -Name $nusnm -Password $nuspss
Add-LocalGroupMember -Group "Administrators" -Member $nusnm
Get-LocalUser
"""
print(command)
exec = sub.Popen(["powershell","& {" + command + "}"])

字符串

bz4sfanl

bz4sfanl2#

如果任何人想要一个不同的方法 * 因为这个问题已经得到了回答,但我在使用它时出现了错误 *,你可以试试这个。它运行一个不同的命令,添加一个用户名和密码,但是,您需要使用pyauc运行脚本以提升权限:

import subprocess
import pyuac

user='ABC122'
password='ABC122'

if __name__ == "__main__":
    if not pyuac.isUserAdmin():
        print("Re-launching as admin!")
        pyuac.runAsAdmin()
    else:    
     subprocess.run(['net','user',user,password,'/add'])
     input()

字符串
你不需要最后的投入。我只是使用它,所以命令窗口不会自动关闭,所以你可以看到输出。

相关问题