如何从命令行删除/ var / mail / username中的所有内容?


52

由于长期执行cron作业,我的用户邮箱中有1000多条消息。删除它们的最简单方法是什么?

Answers:


85

如果要删除所有邮件,只需使用以下命令截断用户的邮箱文件:

> /var/mail/username

(大于号不是提示:实际上是将什么都没有重定向到文件,这将截断它)。


6

在终端中运行邮件。按d 1-。这将删除这些消息。

删除用于管理邮件的文件就像用锤子调节电视的音量一样。它可能有效,但是它不是最佳的,而且太残酷了。


是正确的答案。如果命令尚不清楚,它还允许只删除一些电子邮件。例如,d 1-100将删除前100条电子邮件。
texnic

我必须在Ubuntu 12.04上安装mailutils然后使用d *
Leslie Viljoen

1

我认为您很少想从邮件中删除所有内容。

因此,我建议将crontask设置为每周运行一次,以保留每个用户邮件的最后100行

cat /var/mail/username | tail -100 > /var/mail/username

这将保留最后100行


4
这不是一个好的解决方案。您可能会在消息中间截断文件。/ var / mail / user的默认格式只是带有连续电子邮件的文件。例如,如果您在中间截断了mime消息,则该消息无效。使用诸如mail之类的工具来管理邮件后台处理程序-或使用> / var / mail / username技巧将其全部删除。
vidarlo

0

这取决于您是否具有ftp访问权限。如果是这样,只需使用Nautilus比其他任何ftp客户端做更多的事情。我还使用它和Bluefish来编辑我网站上的页面。

应该有一个邮件文件夹,您可以在其中查看和删除任何和所有文件。

我发现它比cPanel中的文件管理器容易得多。


2
您在这里做了很多假设-例如cPanel,ftp访问等等。您基于这些?
vidarlo
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.