重定向文件是在没有权限的情况下生成的

时间:2019-05-15 08:23:38

标签: linux bash shell sh

我有一个准备好并在测试平台(linux)服务器中成功测试的shell脚本,并且已将其移到具有读取/写入/执行权限的生产服务器(在测试平台中使用的同一用户,组下)。当我在生产环境中执行脚本时,会出现错误,因为重定向文件是由脚本(在同一文件夹中)在没有权限(--------)的情况下生成的,因此我的脚本执行失败。

我在测试平台服务器上未遇到此问题,仅在用户级别(不是root用户级别)成功测试了脚本。

我已经尝试向用户/组授予我的脚本文件夹/文件的权限,并且用户/组与我在测试平台Linux服务器上成功测试的用户/组相同。

我如何将脚本移至生产环境

unzip -K script.zip
chmod 777 script.zip
cd scriptfolder
./execute.sh

在同一脚本文件夹中生成的重定向文件(gmon.out)

ls -lrt
----------  1 user group 42023 May 15 10:00 gmon.out

预期的重定向文件

-rw-r-----  1 user group 42023 May 15 10:00 gmon.out

请帮助

1 个答案:

答案 0 :(得分:0)

这可能是因为Socowi在命令中指出的umask

Umask决定您创建的任何新文件的权限。

您可以使用umask命令检查umask的当前值。

例如,您可以使用.bashrc命令来更改个人资料文件中的umask(例如,如果使用bash,则为umask 0027)。

有关umask的更多信息: