为什么我可以将文件复制到该目录,但不能在该目录中创建文件?

为什么我可以将文件复制到该目录,但不能在该目录中创建文件?

可能的重复:
将标准输出重定向到您没有写入权限的文件

我正在尝试md5sum为使用 Ubuntu 自定义工具包工具创建的 ISO 映像创建一个 。 ISO 由工具创建,必须使用sudo, 在中运行

~/tmp/remaster-new-files/ 

其拥有权限:

drwxr-xr-x 2 root root remaster-new-files

所以我cd到该目录并运行

sudo md5sum my.iso > my.iso.md5

我收到以下错误:

bash: my.iso.md5: Permission denied

我可以在其他地方创建 md5 和,然后sudo mv将其移动到位,即命令成功时的位置sudo md5sum。另外,如果我将用户更改为rootwith sudo su root,我可以md5sum成功运行该命令。sudo既然我可以用来sudo将文件移动到该目录,为什么我不能用来在此目录中创建文件?

答案1

问题是重定向是从 shell 完成的由于是当前用户运行该命令,所以sudo不发挥作用。

改用

md5sum my.iso | sudo tee my.iso.md5

相关内容