如何从linux终端删除日志文件的内容?

Sus*_*ire 6 linux terminal

我在服务器上有一个日志文件,writelog关于2GB.

我想100,000从文件中删除第一行.我可以打开文件并删除这些行,但由于文件大小,我需要永远下载它.

那么,是否可以从Linux终端执行此操作?如果有,怎么样?

rob*_*gic 13

如果要清除出整个文件的快捷方式是

cat /dev/null > writelog

另请参阅unix.com上的此主题.


Aar*_*lla 7

保留最后1000行可能更好:

mv writelog writelog.bak
tail -1000 writelog.bak > writelog
Run Code Online (Sandbox Code Playgroud)

您应该为文件启用logrotate(手动).然后系统将确保文件不会超出比例.


per*_*eal 4

如果您运行的是 Linux 服务器,则可以使用ssh

ssh username@mydomain.com sed -i '1,100000d' /path/to/logfile
Run Code Online (Sandbox Code Playgroud)