mirror of
https://github.com/Leonmmcoset/CMLeonOS.git
synced 2026-03-03 15:30:27 +00:00
拆分代码10
This commit is contained in:
@@ -29,20 +29,20 @@ namespace CMLeonOS.Commands.FileSystem
|
||||
string sourcePath = fileSystem.GetFullPath(sourceFile);
|
||||
string destPath = fileSystem.GetFullPath(newName);
|
||||
|
||||
if (!System.IO.File.Exists(sourcePath))
|
||||
if (!global::System.IO.File.Exists(sourcePath))
|
||||
{
|
||||
showError($"Source file '{sourceFile}' does not exist");
|
||||
return;
|
||||
}
|
||||
|
||||
if (System.IO.File.Exists(destPath))
|
||||
if (global::System.IO.File.Exists(destPath))
|
||||
{
|
||||
showError($"Destination '{newName}' already exists");
|
||||
return;
|
||||
}
|
||||
|
||||
string content = fileSystem.ReadFile(sourcePath);
|
||||
System.IO.File.WriteAllText(destPath, content);
|
||||
global::System.IO.File.WriteAllText(destPath, content);
|
||||
fileSystem.DeleteFile(sourcePath);
|
||||
|
||||
showSuccess($"File renamed successfully from '{sourceFile}' to '{newName}'");
|
||||
|
||||
@@ -9,7 +9,7 @@ namespace CMLeonOS.Commands.FileSystem
|
||||
string startPath = string.IsNullOrEmpty(args) ? "." : args;
|
||||
string fullPath = fileSystem.GetFullPath(startPath);
|
||||
|
||||
if (!System.IO.Directory.Exists(fullPath))
|
||||
if (!global::System.IO.Directory.Exists(fullPath))
|
||||
{
|
||||
showError($"Directory not found: {startPath}");
|
||||
return;
|
||||
@@ -43,7 +43,7 @@ namespace CMLeonOS.Commands.FileSystem
|
||||
string connector = isLastItem ? "+-- " : "|-- ";
|
||||
string newPrefix = prefix + (isLastItem ? " " : "| ");
|
||||
|
||||
string dirName = System.IO.Path.GetFileName(dir);
|
||||
string dirName = global::System.IO.Path.GetFileName(dir);
|
||||
Console.WriteLine($"{prefix}{connector}{dirName}/");
|
||||
|
||||
PrintDirectoryTree(fileSystem, dir, newPrefix, isLastItem, showError);
|
||||
@@ -55,11 +55,11 @@ namespace CMLeonOS.Commands.FileSystem
|
||||
bool isLastItem = current == totalItems;
|
||||
string connector = isLastItem ? "+-- " : "|-- ";
|
||||
|
||||
string fileName = System.IO.Path.GetFileName(file);
|
||||
string fileName = global::System.IO.Path.GetFileName(file);
|
||||
Console.WriteLine($"{prefix}{connector}{fileName}");
|
||||
}
|
||||
}
|
||||
catch (System.IO.DirectoryNotFoundException)
|
||||
catch (global::System.IO.DirectoryNotFoundException)
|
||||
{
|
||||
showError($"Directory not found: {path}");
|
||||
}
|
||||
|
||||
12
shell/Commands/System/ClearCommand.cs
Normal file
12
shell/Commands/System/ClearCommand.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using System;
|
||||
|
||||
namespace CMLeonOS.Commands.System
|
||||
{
|
||||
public static class ClearCommand
|
||||
{
|
||||
public static void ProcessClear()
|
||||
{
|
||||
Console.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
12
shell/Commands/System/DateCommand.cs
Normal file
12
shell/Commands/System/DateCommand.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using System;
|
||||
|
||||
namespace CMLeonOS.Commands.System
|
||||
{
|
||||
public static class DateCommand
|
||||
{
|
||||
public static void ProcessDate()
|
||||
{
|
||||
Console.WriteLine(DateTime.Now.ToShortDateString());
|
||||
}
|
||||
}
|
||||
}
|
||||
13
shell/Commands/System/EchoCommand.cs
Normal file
13
shell/Commands/System/EchoCommand.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using System;
|
||||
|
||||
namespace CMLeonOS.Commands.System
|
||||
{
|
||||
public static class EchoCommand
|
||||
{
|
||||
public static void ProcessEcho(string args)
|
||||
{
|
||||
var processedArgs = args.Replace("\\n", "\n");
|
||||
Console.WriteLine(processedArgs);
|
||||
}
|
||||
}
|
||||
}
|
||||
12
shell/Commands/System/TimeCommand.cs
Normal file
12
shell/Commands/System/TimeCommand.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using System;
|
||||
|
||||
namespace CMLeonOS.Commands.System
|
||||
{
|
||||
public static class TimeCommand
|
||||
{
|
||||
public static void ProcessTime()
|
||||
{
|
||||
Console.WriteLine(DateTime.Now.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
45
shell/Commands/System/UptimeCommand.cs
Normal file
45
shell/Commands/System/UptimeCommand.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
|
||||
namespace CMLeonOS.Commands.System
|
||||
{
|
||||
public static class UptimeCommand
|
||||
{
|
||||
public static void ShowUptime(Action<string> showError, Action<string> showWarning)
|
||||
{
|
||||
try
|
||||
{
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine(" System Uptime");
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine();
|
||||
|
||||
if (Kernel.SystemStartTime != DateTime.MinValue)
|
||||
{
|
||||
TimeSpan uptime = DateTime.Now - Kernel.SystemStartTime;
|
||||
|
||||
Console.WriteLine("System started: " + Kernel.SystemStartTime.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
Console.WriteLine("Current time: " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
Console.WriteLine();
|
||||
|
||||
int days = uptime.Days;
|
||||
int hours = uptime.Hours;
|
||||
int minutes = uptime.Minutes;
|
||||
int seconds = uptime.Seconds;
|
||||
|
||||
Console.WriteLine($"System uptime: {days} days, {hours} hours, {minutes} minutes, {seconds} seconds");
|
||||
Console.WriteLine($"Total uptime: {uptime.TotalHours:F2} hours");
|
||||
}
|
||||
else
|
||||
{
|
||||
showWarning("System start time not available.");
|
||||
showWarning("System may have been started before uptime tracking was implemented.");
|
||||
}
|
||||
Console.WriteLine();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
showError($"Error showing uptime: {ex.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
17
shell/Commands/System/WhoamiCommand.cs
Normal file
17
shell/Commands/System/WhoamiCommand.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
|
||||
namespace CMLeonOS.Commands.System
|
||||
{
|
||||
public static class WhoamiCommand
|
||||
{
|
||||
public static void ShowCurrentUsername(CMLeonOS.UserSystem userSystem)
|
||||
{
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine(" Current User");
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine();
|
||||
Console.WriteLine($"Username: {userSystem.CurrentUsername}");
|
||||
Console.WriteLine();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -115,13 +115,12 @@ namespace CMLeonOS
|
||||
|
||||
public void ProcessEcho(string args)
|
||||
{
|
||||
var processedArgs = args.Replace("\\n", "\n");
|
||||
Console.WriteLine(processedArgs);
|
||||
Commands.System.EchoCommand.ProcessEcho(args);
|
||||
}
|
||||
|
||||
public void ProcessClear()
|
||||
{
|
||||
Console.Clear();
|
||||
Commands.System.ClearCommand.ProcessClear();
|
||||
}
|
||||
|
||||
public void ProcessRestart()
|
||||
@@ -141,12 +140,12 @@ namespace CMLeonOS
|
||||
|
||||
public void ProcessTime()
|
||||
{
|
||||
Console.WriteLine(DateTime.Now.ToString());
|
||||
Commands.System.TimeCommand.ProcessTime();
|
||||
}
|
||||
|
||||
public void ProcessDate()
|
||||
{
|
||||
Console.WriteLine(DateTime.Now.ToShortDateString());
|
||||
Commands.System.DateCommand.ProcessDate();
|
||||
}
|
||||
|
||||
public void ProcessLs(string args)
|
||||
@@ -715,40 +714,7 @@ namespace CMLeonOS
|
||||
|
||||
public void ShowUptime()
|
||||
{
|
||||
try
|
||||
{
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine(" System Uptime");
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine();
|
||||
|
||||
if (Kernel.SystemStartTime != DateTime.MinValue)
|
||||
{
|
||||
TimeSpan uptime = DateTime.Now - Kernel.SystemStartTime;
|
||||
|
||||
Console.WriteLine("System started: " + Kernel.SystemStartTime.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
Console.WriteLine("Current time: " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
Console.WriteLine();
|
||||
|
||||
int days = uptime.Days;
|
||||
int hours = uptime.Hours;
|
||||
int minutes = uptime.Minutes;
|
||||
int seconds = uptime.Seconds;
|
||||
|
||||
Console.WriteLine($"System uptime: {days} days, {hours} hours, {minutes} minutes, {seconds} seconds");
|
||||
Console.WriteLine($"Total uptime: {uptime.TotalHours:F2} hours");
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowWarning("System start time not available.");
|
||||
ShowWarning("System may have been started before uptime tracking was implemented.");
|
||||
}
|
||||
Console.WriteLine();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowError($"Error showing uptime: {ex.Message}");
|
||||
}
|
||||
Commands.System.UptimeCommand.ShowUptime(ShowError, ShowWarning);
|
||||
}
|
||||
|
||||
public void CreateFTP()
|
||||
@@ -1237,12 +1203,7 @@ namespace CMLeonOS
|
||||
|
||||
public void ShowCurrentUsername()
|
||||
{
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine(" Current User");
|
||||
Console.WriteLine("====================================");
|
||||
Console.WriteLine();
|
||||
Console.WriteLine($"Username: {userSystem.CurrentUsername}");
|
||||
Console.WriteLine();
|
||||
Commands.System.WhoamiCommand.ShowCurrentUsername(userSystem);
|
||||
}
|
||||
|
||||
public void ProcessBase64Command(string args)
|
||||
|
||||
Reference in New Issue
Block a user