Program.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Configuration;
  4. using System.IO;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading;
  8. using System.Threading.Tasks;
  9. namespace FileClear
  10. {
  11. internal class Program
  12. {
  13. static void Main(string[] args)
  14. {
  15. var dir = ConfigurationManager.AppSettings["DataDir"];
  16. while (true)
  17. {
  18. int count = 0;
  19. if (Directory.Exists(dir))
  20. {
  21. var files = Directory.EnumerateFiles(dir, "*", SearchOption.AllDirectories);
  22. foreach (var file in files)
  23. {
  24. try
  25. {
  26. FileInfo f = new FileInfo(file);
  27. if ((DateTime.Now - f.LastWriteTime).TotalHours > 1)
  28. {
  29. f.Delete();
  30. count++;
  31. }
  32. }
  33. catch (Exception ex)
  34. {
  35. }
  36. }
  37. }
  38. Console.WriteLine($"{DateTime.Now:yyyyMMddHHmmss}:本轮共清除了{count}个过期文件");
  39. Thread.Sleep(60000);
  40. }
  41. }
  42. }
  43. }