6

私は次の行に沿って何かをしたい:

echo "Append string" >> protected_file

ただし、このファイルは書き込み保護されているため、エラーが発生します。ランニング:

sudo echo "Append string" >> protected_file

echo コマンドで sudo を実行しているようですが、まだ許可エラーが表示されます。このファイルに追加するにはどうすればよいですか?

4

4 に答える 4

11
echo "Append string" | sudo tee -a protected_file >/dev/null
于 2012-05-22T14:50:00.373 に答える
3

文字通りの答えについては、

sudo sh -c 'echo "Append string" >> protected_file'

しかし、私は原則としてシヴァンラプターに同意します。

説明:>>シェル演算子です。を呼び出す場合sudo command、別のシェルは実行されません。echoしたがって、リダイレクトせずにリダイレクトすることはできませんsudo(最終的に、リダイレクトを実行すると間違ったユーザー ID が返されます)。sudo秘訣は、リダイレクト演算子を発行できる内で別のシェルを起動することです。

于 2012-05-22T08:58:10.733 に答える
0

またはこれを試してください:

echo "echo 'append string' >> protected_file" | sudo bash
于 2012-05-22T09:06:41.580 に答える