static void Main(string[] args) { System.Console.WriteLine("*** START FILE BACKUP ***"); Assembly ass = Assembly.GetExecutingAssembly(); string path = System.IO.Path.GetDirectoryName(ass.Location); string excludeFile = path + @"\exclude.txt"; string extensionsFile = path + @"\extensions.txt"; var sourceNode = ConfigurationManager.AppSettings["SourceNode"]; var destinationNode = ConfigurationManager.AppSettings["DestinationNode"]; var useMetadata = ConfigurationManager.AppSettings["UseMetadata"] == "true" ? true : false; var logFile = destinationNode + @"\log.txt"; var errorLogFile = destinationNode + @"\error.txt"; var excludeList = new List <string>(); if (File.Exists(excludeFile)) { var fileLines = File.ReadAllLines(excludeFile); excludeList = new List <string>(fileLines); } var extensionsList = new List <string>(); if (File.Exists(extensionsFile)) { var fileLines = File.ReadAllLines(extensionsFile); extensionsList = new List <string>(fileLines); } OrganizationFormat organizationFormat = (OrganizationFormat)Enum.Parse(typeof(OrganizationFormat), ConfigurationManager.AppSettings["OrganizationFormat"]); DirectoryInfo di = new DirectoryInfo(sourceNode); FileSystemScan.FullDirList(di, "*", excludeList); System.Console.WriteLine("Total File Count: {0}", FileSystemScan.files.Count); System.Console.WriteLine("Directory Count: {0}", FileSystemScan.DirectoryCount); System.Console.WriteLine("Folder Count: {0}", FileSystemScan.folders.Count); System.Console.WriteLine("Inaccessible Folder Count: {0}", FileSystemScan.inaccessfolders.Count); var fileList = FileSystemScan.files.Where(s => extensionsList.Contains(s.Extension.ToLower())).ToList(); System.Console.WriteLine("Copy File Count: {0}", fileList.Count); foreach (var file in fileList) { var destinationPath = CreateDestinationPath(file, destinationNode, useMetadata, organizationFormat); CopyFileExactly(file.FullName, destinationPath, errorLogFile); //System.Console.WriteLine("File {0} {1} {2}", info.Name, info.CreationTime, fullDestPath); } System.Console.WriteLine("*** END FILE BACKUP ***"); System.Console.Read(); }
private void btn_TSM_HotFileAudit_Click(object sender, EventArgs e) { OpenFileDialog ofd = new OpenFileDialog(); if (ofd.ShowDialog() == DialogResult.OK) { FileSystemScan.AuditValid(new ModuleBox(_mBox) { CodeId = CodeId.Nothing, StringBody = ofd.FileName }); } }