GNU/Linux >> Linux の 問題 >  >> Linux

Sudo Echo「xyz」の出力をファイルにリダイレクトするときに「permissionDenied」を取得しますか?

この質問にはすでに回答があります :書き込み権限のないファイルにstdoutをリダイレクトする

(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にも)


Linux
  1. ターミナルの入力と出力をテキストファイルに取得する方法は??

  2. ファイルの 2 列目を出力する

  3. Pythonで(MB)ファイルのtar.gzのサイズを取得する方法

  1. 標準出力からの出力の最後の 4 文字を取得する

  2. bashでファイルの絶対ディレクトリを取得するにはどうすればよいですか?

  3. `less` または `more` を使用してファイルを読み取る場合、コンテンツをカラーで取得するにはどうすればよいですか?

  1. ファイルの内容をコマンド「echo」にリダイレクトしますか?

  2. コマンドがユーザー入力を要求するときに、コマンドの出力をファイルにリダイレクトする方法は?

  3. Linuxでファイルの物理サイズを取得するには?