この質問にはすでに回答があります :書き込み権限のないファイルにstdoutをリダイレクトする
(7つの回答)
6年前に閉鎖されました。
Linux
(7つの回答)
6年前に閉鎖されました。
なぜ取得するのですか
-bash: test: Permission denied
走ったとき
sudo echo "xyz" > test
ディレクトリのアクセス許可は次のとおりです。
drwxr-xr-x 3 root root 4096 2014-08-05 16:26
sudo
を使用してディレクトリにファイルを作成するのに問題はありません 。しかし、なぜ私はそれにsudoエコーできないのですか?
承認された回答:
これは、echo
のみを実行しているために発生します ルートとしてのコマンド。出力リダイレクトは、(ルート以外の)シェルによって処理されます。これを回避するには、シェルのリダイレクトを使用せず、実際のコマンドを使用して書き込みを処理します:tee
。あなたがしたいことはそのように行うことができます:
echo "xyz" | sudo tee test > /dev/null
(出力をリダイレクトしない場合は、tee
xyz
を出力します stdoutにも)