Eu sei que podemos usar o formato abaixo para redirecionar a saída da tela para um arquivo:
$ your_program > /tmp/output.txt
No entanto, quando usei o comando abaixo, ele diz "-bash: /home/user/errors.txt: permissão negada"
sudo tail /var/log/apache2/error.log > ~/errors.txt
Posso saber como fazer essa saída funcionar? O ~ / errors.txt não existe. Preciso criar esse arquivo txt antes de usar o comando redirect?
user
usuário que executa o comando?
sudo
. sudo
não permite o redirecionamento. muitas maneiras pelas quais as pessoas podem usar isso para fazer coisas impertinentes não incluídas no sudoers.conf
arquivo. Como alternativa, você pode executar sudo bash -c "tail /var/log/apache2/error.log > ~/errors.txt"
para arrastar o final de errors.log para o arquivo no seu diretório home.
echo hi > ~/errors.txt
? O/home/user
seu diretório pessoal correto (ou o bash de alguma forma ficou confuso sobre onde está o diretório pessoal)?