我可以将文件写入linux目录,指定cfscript中的文件权限吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我可以将文件写入linux目录,指定cfscript中的文件权限吗?相关的知识,希望对你有一定的参考价值。
我有一个函数将coldfusion查询结果作为文件写入临时目录。它工作正常,并节省了必须经常运行查询。
但是,我想编写一个git钩子来删除这些缓存的文件,因为当我们推送新代码时,数据可能已经过时,因此应该被替换。这些文件由apache用户在644模式下创建。 git用户与apache用户位于同一组中,因此为了让git用户能够删除文件,我想要创建它们,或者随后将它们设置为664模式。
最初我在使用objectSave之后添加了fileSetAccessMode:
objectSave( data, filepath );
fileSetAccessMode( filepath, '664' )
然而这似乎没有任何影响,所以尝试了
fileWrite( filepath, data, '664' );
这似乎也写文件很好,但没有设置权限。
我注意到Adobe Docs for fileWrite没有为模式指定参数,所以我想这就是为什么这不起作用。我更喜欢cfdocs.org,但我对their take on the cfscript versions of cffile感到很困惑,因为哪些函数使用了哪些参数并不明显。
经过一些更多的谷歌搜索,我发现这个cflib.org cftag style function,我想我可以借用和引用cfscript但我真的不想这样做。
我真正想知道的是,我可以纯粹在cfscript中实现这一点,还是在脚本和标签之间的API功能方面存在真正的差异? (我很确定在其他情况下就是这种情况)。
非常感谢任何输入。
休息一下然后回到这里,我发现我可以使用
fileSetAccessMode( file, '664' );
在cfscript中,令人尴尬的是我在代码中的错误位置。但是,之前仍然需要单独创建该文件,因为
fileWrite( file, content );
不支持“模式”参数,如
<cffile action="write" file="file" output="content" mode="664">
有consulted with some wiser members of the community,我有filed this as a bug with Adobe。
以上是关于我可以将文件写入linux目录,指定cfscript中的文件权限吗?的主要内容,如果未能解决你的问题,请参考以下文章