我可以帮您将 Linux 命令翻译成 Python 脚本。以下是需要翻译的内容:
Linux 命令:
chmod 777 file1 file1/tmp file2 file2/tmp file3 file3/tmp
我知道os.chmod(file, 0777)
,但我不确定如何在上面的代码中使用它。
os.chmod
接受一个文件名作为参数,因此您需要循环遍历文件名并应用 chmod
:
files = ['file1', 'file1/tmp', 'file2', 'file2/tmp', 'file3', 'file3/tmp']
for file in files:
os.chmod(file, 0o0777)
顺便说一句,我不确定为什么你要将权限位设置为777
——这样做是在自找麻烦。你应该尽可能地选择最严格的权限位。
pathlib
,你可以使用该库中的 .chmod()
。from pathlib import Path
files = ['file1', 'file1/tmp', 'file2', 'file2/tmp', 'file3', 'file3/tmp']
for file in files:
Path(file).chmod(0o0777)
chmod 777
可以完成任务,但它给予脚本的权限可能比你想要的多。
限制权限到执行才更好。
我建议使用:chmod +x myPythonFile.py
chmod
通常是从命令行/控制台预先执行的。回顾一下,我的答案在直接的 Python 代码方面并没有帮助。但你可以从 Python 执行控制台命令来完成任务。当然,该脚本需要以 root/admin 权限执行才能执行 chmod
。 - benhorgen
chmod 777
都是错误和危险的。在任何情况下,您绝对不希望将可执行文件或系统文件的写访问权限授予所有用户。您需要尽快恢复到正常的权限(对于您的用例,可能是chmod 755
),并在再次尝试使用之前了解 Unix 权限模型。如果这发生在具有 Internet 访问权限的系统上,请检查是否有入侵者可以利用此来提升其特权。 - tripleee