创建新用户并使用骨架文件夹执行 python3 文件名

创建新用户并使用骨架文件夹执行 python3 文件名

我正在自动化一个系统,以使用 python 创建用户并通过该用户运行 python 脚本。这是我正在运行的代码以及错误。root 正在创建一个用户,然后以 root 身份运行该文件。从 skel 复制的文件夹如下所示 /etc/skel/newFolder。用户名变量为“newUser”

os.system('sudo adduser --disabled-password --gecos "" ' + username)
path = '/home/'+username+'/newFolder' 
path.replace("'", r"\'")

print(subprocess.run("test -e '{}'".format(path), shell=True))
subprocess.run("sudo python3 '{}'".format(path), shell=True)
print(os.path.isfile(path))

错误

Adding user 'newUser' ...    
Adding new group 'newUser' (1000) ...    
Adding new user 'newUser' (1000) with group `newUser' ...   
Creating home directory `/home/newUser' ...    
Copying files from '/etc/skel' ...    
CompletedProcess(args="test -e '/home/newUser/newFolder'", returncode=1)    
python3: can't open file '/home/newUser/newFolder/pythonFile.py': [Errno 2] No such file or directory

返回代码 1 表示测试表明从 skel 复制的这个“newFolder”不存在。当然,python3 找不到这个 python 文件。如果我通过终端查找这个目录,它确实存在。非常令人沮丧,请帮忙。

答案1

我遇到的所有错误都是因为文件路径中的大小写错误。你在开玩笑吧。问题解决了。

相关内容