我必须使用Python脚本将所有文件从特定目录移动到root
目录。我的以下代码失败,错误为[Errno 13] Permission denied
。
import shutil
import os
source = '../json'
dest = '/var/www/json'
files = os.listdir(source)
for f in files:
shutil.move(source+"/"+f, dest)
是否可以使用此代码添加sudo
或是否有其他方法将文件移动到根文件夹?
我在Ubuntu16.04中工作
答案 0 :(得分:1)
您可以将您的用户添加到文件夹权限,并授予该用户对该文件夹的写访问权限。 使用chown或chmod调整目标文件夹上的权限
答案 1 :(得分:1)
我可以想到三种可能的解决方案:
sudo python script.py
。可能不是最佳方法,因为可能存在安全隐患。cp
/ mv
作为子进程。基本上与第一个选项相同。可以通过让用户输入root的密码来完成,我猜这对您来说不大。或者,您可以使用polkit
之类的方法来避免使用密码。从长远来看,我建议第二个选项是最好和最简单的。