我需要清除一个日志文件:
cat /dev/null > error.log
问题是这个文件是由root拥有的
-rw-r--r-- 1 root root 15505 Feb 9 15:08 error.log
这不起作用
$ sudo cat /dev/null > error.log -bash: error.log: Permission denied
不知道为什么…所以我怎么能解决这个问题?
尝试这个:
$ sudo sh -c "cat /dev/null > error.log"
问题是,用你使用的命令,你真的在运行两个命令:第一个猫以root用户(通过sudo)运行,但其他的一切都以你的用户身份运行。 以上方法解决了这个问题。
U&L上的这个答案有更多的信息。