我创建了一个Jenkins构建来编译和分发一些模块。构建命令的输出(例如,make
或ant
)将重定向到名为build.log
的文件。
有趣的是,使用echo
将tee
重定向到同一个文件中失败了:
tee: ../../build.log: Permission denied
该文件存在并具有777权限(使用ls -ltrh ../..
进行检查)。任何想法写这个写错了什么?
答案 0 :(得分:13)
文件的权限很重要,但该文件的超级目录的权限也很重要。
如果您对正在遍历的目录没有读取和执行权限,则无法遵循该文件的相对路径。如果您对“build.log”所在的目录缺少读取权限,则无法列出该目录中的文件。读取,写入和执行权限对目录很重要,它们大致映射到: