【发布时间】:2021-08-15 17:20:05
【问题描述】:
我在我们的一个开发 RedHat linux 机器上获得了 sudo 访问权限,我似乎发现自己经常需要将输出重定向到我通常没有写入权限的位置。
问题是,这个人为的例子不起作用:
sudo ls -hal /root/ > /root/test.out
我刚刚收到回复:
-bash: /root/test.out: Permission denied
我怎样才能让它工作?
【问题讨论】:
-
使用 chmod u+w 文件名
-
@DombiSzabolcs 您是在建议我先将文件创建为 sudo,然后再授予自己权限?好主意。
-
在许多情况下,您最终会出现在这里,因为您问“为什么我会被拒绝权限?”有时答案是您确实需要创建一个文件为
root(在这种情况下继续阅读答案),但通常您只需要像您自己一样在其他地方创建文件。 -
在为这些答案苦苦挣扎之后,我最终选择重定向到一个临时文件并 sudo 将其移动到目的地。
-
鉴于大量的赞成和回答,我觉得这篇文章应该被继承并重新打开,即使它不是严格按照现代定义的主题。它仍然是一个非常有用的参考问答。
标签: linux bash permissions sudo io-redirection