using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;
using System.Runtime.InteropServices;
namespace TemporaryFilesRemoval
{
class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
Console.Title = "Temporary LOG Files Removal";
DeleteFiles("C:\\Program Files\\Common Files\\Microsoft Shared\\web server extensions\\12\\LOGS", "*.log");
DeleteFolder("C:\\Program Files\\Common Files\\Microsoft Shared\\web server extensions\\12\\LOGS", "*.log");
DeleteFiles("D:\\Sharepoint Logs", "*.log");
DeleteFiles("C:\\Documents and Settings\\Default User\\Local Settings\\Temp", "*.log");
}
static void DeleteFolder(string rootfolder, string filter)
{
try
{
string[] directories = System.IO.Directory.GetDirectories(rootfolder);
Console.WriteLine(string.Format("Total {0} directories in {1}", (directories.Length), rootfolder));
foreach (string dir in directories)
{
DeleteFiles(dir, filter);
DeleteFolder(dir, filter);
try
{
Console.WriteLine(string.Format("Deleting directory : {0}", dir));
System.IO.Directory.Delete(dir);
Console.WriteLine(string.Format("{0} has been deleted.", dir));
}
catch (Exception ex)
{
Console.WriteLine(string.Format("Error : {0}", ex.Message));
Console.WriteLine();
}
}
}
catch (Exception ex)
{
Console.WriteLine(string.Format("Error : {0}", ex.Message));
Console.WriteLine();
}
}
static void DeleteFiles(string folder, string filter)
{
string[] files = null;
try
{
if (!string.IsNullOrEmpty(filter))
{
files = System.IO.Directory.GetFiles(folder, filter);
}
else
{
files = System.IO.Directory.GetFiles(folder);
}
Console.WriteLine(string.Format("Total {0} file(s) in {1}", (files.Length), folder));
Console.WriteLine();
foreach (string file in files)
{
Console.WriteLine(string.Format("Deleting {0}", file));
System.IO.File.Delete(file);
Console.WriteLine(string.Format("{0} has been deleted.", file));
Console.WriteLine();
}
}
catch (Exception ex)
{
Console.WriteLine(string.Format("Error : {0}", ex.Message));
Console.WriteLine();
}
}
}
}