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

hosts ファイルに行を追加すると、sudo の使用時に権限が拒否されます - Mac

echoだからです root として実行されていますが、実際にリダイレクトを実行しているのはシェルです。これを機能させるには、新しいシェルを生成する必要があります:

sudo -- sh -c "echo test >> /etc/hosts"

編集:> という事実を見たことがない リダイレクトが機能します。それは説明できません。


例でエコーが実行されているため、ルートではなく、現在のユーザーとして実行されるリダイレクトを介してエコーを実行するのではなく、スティーブブゾナスが提案するようにティーを使用します

 echo 'test' | sudo tee -a /etc/hosts

sudo が tee コマンドに適用されるようになりました。 「-a」はファイルに追加します

これにより、tee も標準出力に出力されます。端末に 'test' を表示したくない場合は、> /dev/null も追加してください。 その行の終わりまで。


Linux
  1. コマンドラインを使用してLinuxでtar.gzファイルを抽出する方法

  2. LinuxコマンドラインからのGoogleドライブの使用

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

  1. Sudoコマンドを使用してファイルを作成した場合、ファイルの所有者は誰ですか?

  2. Linux でコマンドラインを使用して任意のファイルをダウンロードするための 4 つのツール

  3. sudoとしてファイルに追加する方法は?

  1. Sudoの許可は拒否されましたが、Suは許可を与えますか?

  2. Linuxのコマンドラインを使用してファイルを作成する

  3. 同じ行で数値表記を使用して許可を削除および追加する