![`sudo cat /tmp/1 > file`エラーが発生するのはなぜですか? [コピー]](https://linux33.com/image/8890/%60sudo%20cat%20%2Ftmp%2F1%20%26gt%3B%20file%60%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%99%E3%82%8B%E3%81%AE%E3%81%AF%E3%81%AA%E3%81%9C%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E3%82%B3%E3%83%94%E3%83%BC%5D.png)
私はしかし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
リダイレクトは現在シェルによって設定されるため、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