【发布时间】:2021-03-21 01:54:41
【问题描述】:
在 python 3 脚本中,我尝试为目录中的所有 .sh 文件添加执行权限,如下所示:
from os import chmod
chmod('/path_to_dir/dir_prefix_*/bin/*.sh',0o755)
但我收到一个错误:
FileNotFoundError: [Errno 2] No such file or directory:'/path_to_dir/dir_prefix_*/bin/*.sh'
如果我从 bash 运行这个 chmod,它可以正常工作,所以我猜 python 的 chmod 不喜欢在路径中使用 *。
那么,chmod 目录中所有 .sh 文件的正确方法是什么?
【问题讨论】:
-
Pythond 不能使用
*来获取所有文件 - 你必须使用循环来获取前缀为dir_prefix_的所有文件夹,然后使用另一个循环来获取所有扩展名为.sh的文件在文件夹中。最终你应该首先使用glob.glob(),它可以使用*
标签: python python-3.x chmod