以下の形式を使用して、画面出力をファイルにリダイレクトできることを知っています。
$ your_program > /tmp/output.txt
しかし、以下のコマンドを使用すると、「-bash:/home/user/errors.txt:権限が拒否されました」と表示されます
sudo tail /var/log/apache2/error.log > ~/errors.txt
この出力を機能させる方法を教えてください。〜/ errors.txtは存在しません。リダイレクトコマンドを使用する前に、まずこのtxtファイルを作成する必要がありますか?
user
コマンドを実行するユーザーには?
sudo
。 sudo
リダイレクトを許可しません。sudoers.conf
ファイルに含まれていないいたずらなことをするために人々がそれを使うことができるにはあまりにも多くの方法。別の方法として、sudo bash -c "tail /var/log/apache2/error.log > ~/errors.txt"
errors.logの終わりをホームディレクトリのファイルにスクレイピングすることもできます。
echo hi > ~/errors.txt
か?/home/user
あなたの正しいホームディレクトリはありますか(またはbashはどういうわけかあなたのホームディレクトリがどこにあるかについて混乱しましたか?)