为什么 `sudo cat /tmp/1 > file` 错误?

为什么 `sudo cat /tmp/1 > file` 错误?

我愿意sudo cat /tmp/1 > /etc/udev/rules.d/69-libmtp.rules,但我得到

bash: /etc/udev/rules.d/69-libmtp.rules: Permission denied

系统:Ubuntu 16.04
Linux内核:4.6

答案1

重定向是由当前 shell 设置的,因此sudo不会影响您写入/etc/udev/rules.d.

通常的技巧是使用tee

sudo tee /etc/udev/rules.d/69-libmtp.rules < /tmp/1

正如所指出的固定的不过,在这种特殊情况下,您不需要重定向:

sudo cp /tmp/1 /etc/udev/rules.d/69-libmtp.rules

相关内容