using System; namespace CMLeonOS.Commands.FileSystem { public static class RmCommand { public static void ProcessRm(CMLeonOS.FileSystem fileSystem, string args, bool fixMode, Action showError) { if (string.IsNullOrEmpty(args)) { showError("Please specify a file name"); } else { bool isInSysFolder = (args.Contains(@"\system\") || args.Contains(@"/sys/")) && !fixMode; if (isInSysFolder) { string[] parts = args.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); bool hasNorisk = false; string filePath = args; if (parts.Length > 1) { hasNorisk = Array.IndexOf(parts, "-norisk") >= 0; filePath = parts[0]; } if (!hasNorisk) { showError("Cannot delete files in sys folder without -norisk parameter"); showError("Usage: rm -norisk"); } else { fileSystem.DeleteFile(filePath); } } else { fileSystem.DeleteFile(args); } } } } }