Limpando um arquivo de log de propriedade do root

2

Eu preciso limpar um arquivo de log com:

cat /dev/null > error.log 

O problema é que o arquivo é de propriedade do root

-rw-r--r-- 1 root root 15505 Feb  9 15:08 error.log

e isso não funciona

$ sudo cat /dev/null > error.log 
-bash: error.log: Permission denied

não sei por que ... então como eu poderia contornar isso?

    
por davidhq 09.02.2014 / 16:09

1 resposta

8

Tente isto:

$ sudo sh -c "cat /dev/null > error.log"

O problema é que com o comando que você usou, você está realmente executando dois comandos: o primeiro gato é executado como root (via sudo), mas todo o restante é executado como seu usuário. O método acima resolve isso.

This responder sobre U & L tem mais informações sobre isso.

    
por 09.02.2014 / 16:14

Tags