C#: 環境変数 PATH や CLASSPATH の値をチェックするツールを書いてみる

すごく昔 (id:sardine:2006033) にやったことの C# 版。

www.toyfish.blog

短いコードでリハビリをするのだの巻。


前回は「後でオプションを何か追加しよう」と思っていたので、引数をひとつしか見ていなかった。今回は引数をループして処理するようにした。それ以外は前回と同じ仕様。

using System;
using System.IO;

namespace Bazuzu
{
    class Bazuzu
    {
        static void Main(string[] args)
        {
            foreach (string arg in args)
            {
                string env = Environment.GetEnvironmentVariable(arg);
                if (env != null)
                {
                    Console.WriteLine("[{0}]", arg.ToUpper());
                    foreach (string path in env.Split(Path.PathSeparator))
                    {
                        char mark = File.Exists(path) ? 'f' : Directory.Exists(path) ? 'd' : '!';
                        Console.WriteLine("{0} {1}", mark, path);
                    }
                }
                else
                {
                    Console.WriteLine("{0} not found.", arg);
                }
                Console.WriteLine();
            }
        }
    }
}