我有一个运行CPAN :: Mini :: Inject操作的脚本,并且有一个App :: Cache。它工作正常,但有时我需要从不同的用户帐户运行它,这是因为我运行文件权限,因为一些文件是自动创建的0740权限。
现在我正在使用system("chmod -R a+w .")
的拐杖,但我不喜欢它。
对于脚本的范围,是否有一种方法可以为所有创建的文件强制实施0777的全局文件模式?
答案 0 :(得分:6)
查看umask。
答案 1 :(得分:6)
您可以使用umask
内置更改默认文件模式。例如,umask 0
会将默认模式更改为0777。
但是,如果使用权限0740创建文件,则可能意味着CPAN :: Mini :: Inject正在明确设置权限,并且umask可能不起任何作用。
在后一种情况下,您将不得不深入了解模块源代码,查找设置权限的位置,并查看是否可以重载它。另一种选择是向作者提交功能请求。
顺便说一句,CPAN :: Mini模块接受dirmode
选项来设置目录权限。