Exemple #1
0
        public void AnalyseDirectories()
        {
            var maxResults = 100;

            var directoryPairs = _directoryAnalyser.AnalyseDirectories(_index, maxResults);

            foreach (var directoryPair in directoryPairs)
            {
                Console.WriteLine();
                Console.WriteLine($"{directoryPair.Directory1}: {directoryPair.Directory1OnlyFilesSize.ToFileSize()}");
                Console.WriteLine($"{directoryPair.Directory2}: {directoryPair.Directory2OnlyFilesSize.ToFileSize()}");
                Console.WriteLine($"Potential Saving: {directoryPair.PotentialSaving.ToFileSize()}");

                var filesToShow = directoryPair.CommonFiles
                                  .OrderByDescending(f => f.Value.First().Size)
                                  .Take(10)
                                  .ToList();

                foreach (var file in filesToShow)
                {
                    var fileNames = file.Value
                                    .Select(fn => fn.Key.Substring(fn.Key.LastIndexOf('/') + 1))
                                    .ToList();

                    var allFileNames = string.Join(", ", fileNames);
                    Console.WriteLine($"\t {file.Value.First().Size.ToFileSize()}: {allFileNames}");
                }
            }
        }