Program.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. namespace Utilities
  2. {
  3. internal class Program
  4. {
  5. static void Main(string[] args)
  6. {
  7. DeleteSillyFolders();
  8. }
  9. private static void DeleteSillyFolders()
  10. {
  11. var test = Directory.GetParent(System.IO.Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName;
  12. CheckAndDelete(test);
  13. }
  14. private static void CheckAndDelete(string path)
  15. {
  16. var foldersToDelete = new List<string>()
  17. {
  18. "Bin",
  19. "Obj",
  20. };
  21. var directories = Directory.GetDirectories(path);
  22. foreach (var directory in directories)
  23. {
  24. var directoryName = new DirectoryInfo(directory).Name;
  25. if (foldersToDelete.Any(c => string.Equals(c, directoryName, StringComparison.CurrentCultureIgnoreCase)))
  26. {
  27. try
  28. {
  29. Directory.Delete(directory, true);
  30. }
  31. catch (UnauthorizedAccessException)
  32. {
  33. Console.WriteLine("This is expected");
  34. }
  35. catch (Exception e)
  36. {
  37. //throw new Exception(e.ToString());
  38. }
  39. continue;
  40. }
  41. CheckAndDelete(directory);
  42. }
  43. }
  44. }
  45. }