SortCodeMethods
DeleteEmptyDirectories Remove deprecated tasks Current Results Move to 1 or 9 ...
This commit is contained in:
55
ADO2025/PI5/Helper-2025-03-15.cs
Normal file
55
ADO2025/PI5/Helper-2025-03-15.cs
Normal file
@ -0,0 +1,55 @@
|
||||
using File_Folder_Helper.Helpers;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace File_Folder_Helper.ADO2025.PI5;
|
||||
|
||||
internal static partial class Helper20250315
|
||||
{
|
||||
|
||||
internal static void Empty(ILogger<Worker> logger, List<string> args)
|
||||
{
|
||||
string[] searchPatterns = args[2].Split('|');
|
||||
string sourceDirectory = Path.GetFullPath(args[0]);
|
||||
if (searchPatterns.Length == 1)
|
||||
{
|
||||
string[] files = Directory.GetFiles(sourceDirectory, searchPatterns[0], SearchOption.AllDirectories);
|
||||
if (files.Length == 0)
|
||||
logger.LogWarning("<{files}>(s)", files.Length);
|
||||
else
|
||||
{
|
||||
string directoryName;
|
||||
string[] directories;
|
||||
foreach (string file in files)
|
||||
{
|
||||
directoryName = Path.GetDirectoryName(file) ?? throw new Exception();
|
||||
directories = Directory.GetDirectories(directoryName, "*", SearchOption.TopDirectoryOnly);
|
||||
foreach (string directory in directories)
|
||||
HelperDeleteEmptyDirectories.DeleteEmptyDirectories(logger, directory);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
string[] files;
|
||||
string checkFile;
|
||||
HelperDeleteEmptyDirectories.DeleteEmptyDirectories(logger, sourceDirectory);
|
||||
foreach (string searchPattern in searchPatterns)
|
||||
{
|
||||
files = Directory.GetFiles(sourceDirectory, searchPattern, SearchOption.AllDirectories);
|
||||
if (files.Length == 0)
|
||||
logger.LogWarning("<{files}>(s)", files.Length);
|
||||
else
|
||||
{
|
||||
foreach (string file in files)
|
||||
{
|
||||
checkFile = $"{file}.json";
|
||||
if (File.Exists(checkFile))
|
||||
continue;
|
||||
File.Move(file, checkFile);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user