我的脚本正在用abc用户创建一个gt.txt
文件,并在其中写入一些内容。我有另一个脚本将内容附加到同一个文件gt.txt
,但由于它是以不同的用户身份运行,因此会抛出错误。
我该怎么办?任何可能的解决方两者都是shell脚本,但作为不同的用户运行。
答案 0 :(得分:0)
我认为你得到的错误是“许可被拒绝”。
一种选择是创建一个用户可以属于的组,并为该文件分配组权限,以允许组成员写入该文件。像这样:
groupadd gtgroup
usermod -a -G gtgroup abcuser
usermod -a -G gtgroup defuser
chgrp gtgroup gt.txt
chmod g+rw gt.txt
您需要以root用户或sudo方式发出大部分命令。此外,groupadd和usermod命令可能因类Unix系统而异。
如果从perl脚本中创建文件,则可能必须在perl脚本中执行chgrp和chmod。使用Perl chown和chmod即可。