从命令行检测参数

本文关键字:参数 检测 命令行 | 更新日期: 2023-09-27 17:57:23

我所需的命令行如下:

sortfolder.exe -6.70_Extensions -7

7foreach(var file in files.OrderByDescending(x=>x).Skip(7))的位置

-6.70_Extensionsvar di = new DirectoryInfo("C:''Work''6.70_Extensions''Build");static string path = "C:''Work''6.70_Extensions''Build''"

排序文件夹.exe:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace sortfolder
{
    class Program
    {
        static string path = "C:''Work''6.70_Extensions''Build''";
        static void Main(string[] args)
        {
            var di = new DirectoryInfo("C:''Work''6.70_Extensions''Build");
            foreach (var file in di.GetFiles("*", SearchOption.AllDirectories))
                file.Attributes &= ~FileAttributes.ReadOnly;
            var files = Directory.GetDirectories(path, "SASE Lab Tools.*");
            foreach(var file in files)
            Console.WriteLine(file);
            foreach(var file in files.OrderByDescending(x=>x).Skip(7))
            Console.WriteLine(file);
            foreach(var file in files.OrderByDescending(x=>x).Skip(7))
            Directory.Delete(file, true);
        }
    }
}

所以我的命令行是以下形式: sortfolder.exe -version -integer

这种version可以是任何形式的:

6.70_Extensions
6.80_Extensions
7.00_Main
7.20_Main
8.00_Extensions
etc

integer

可以是任何整数

我怎样才能做到这一点?

编辑:

浏览完这个之后

我编辑了我的代码:

namespace sortfolder
{
    class Program
    {
        static void Main(string[] args)
        {
            var di = new DirectoryInfo("C:''Work''{0}''Build", args[0]);
            string path = ("C:''Work''{0}''Build''", args[0]) ;
            foreach (var file in di.GetFiles("*", SearchOption.AllDirectories))
                file.Attributes &= ~FileAttributes.ReadOnly;
            var files = Directory.GetDirectories(path, "SASE Lab Tools.*");
            foreach(var file in files)
            Console.WriteLine(file);
            foreach(var file in files.OrderByDescending(x=>x).Skip({0}), args[1])
            Console.WriteLine(file);
            foreach(var file in files.OrderByDescending(x=>x).Skip({0}), args[1])
            Directory.Delete(file, true);
        }
    }
}

我的语法有些不对??

从命令行检测参数

看到Main()中的string[] args了吗?利用它。

http://msdn.microsoft.com/en-us/library/acy3edy3.aspx

上面的链接包含所有解释和示例,可帮助您继续前进。