Skip to content

Instantly share code, notes, and snippets.

@aetos382
Last active August 29, 2015 14:09
Show Gist options
  • Save aetos382/a613d383b660a477627d to your computer and use it in GitHub Desktop.
Save aetos382/a613d383b660a477627d to your computer and use it in GitHub Desktop.
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Reflection;
internal class Program
{
private static IEnumerable<string> GetFiles(string directory = ".")
{
try
{
var files = (IEnumerable<string>)Directory.GetFiles(directory);
var directories = Directory.GetDirectories(directory);
foreach (string subDirectory in directories)
{
var subDirectoryFiles = GetFiles(subDirectory);
files = files.Concat(subDirectoryFiles);
}
return files;
}
catch
{
return Enumerable.Empty<string>();
}
}
private static void Main(string[] args)
{
var start = DateTimeOffset.Now;
Console.WriteLine("Start: {0}", start.ToString("O"));
Console.WriteLine("======================================");
try
{
Console.WriteLine("Hello, paiza.io !!");
Console.WriteLine();
Console.WriteLine("Assembly Location: {0}", Assembly.GetExecutingAssembly().Location);
Console.WriteLine("CommandLine: {0}", Environment.CommandLine);
Console.WriteLine("Current Directory: {0}", Environment.CurrentDirectory);
Console.WriteLine("64bit OS: {0}", Environment.Is64BitOperatingSystem);
Console.WriteLine("64bit Process: {0}", Environment.Is64BitProcess);
Console.WriteLine("Machine Name: {0}", Environment.MachineName);
Console.WriteLine("OS Version: {0}", Environment.OSVersion);
Console.WriteLine("Processor Count: {0}", Environment.ProcessorCount);
Console.WriteLine("System Directory: {0}", Environment.SystemDirectory);
Console.WriteLine("User Name: {0}", Environment.UserName);
Console.WriteLine("Version: {0}", Environment.Version);
Console.WriteLine();
Console.WriteLine("Culture: {0}", CultureInfo.CurrentCulture.DisplayName);
Console.WriteLine("UI Culture: {0}", CultureInfo.CurrentCulture.DisplayName);
Console.WriteLine();
var domain = AppDomain.CurrentDomain;
Console.WriteLine("Loaded Assemblies:");
var assemblies = domain.GetAssemblies();
foreach (var assembly in assemblies)
{
Console.WriteLine("\t{0}", assembly.FullName);
}
var process = Process.GetCurrentProcess();
Console.WriteLine();
Console.WriteLine("Process Id: {0}", process.Id);
Console.WriteLine("Process Modules:");
foreach (var module in process.Modules.OfType<ProcessModule>())
{
Console.WriteLine("\t{0}", module.FileName);
}
Console.WriteLine();
Console.WriteLine("Files in current directory:");
var files = GetFiles();
foreach (var file in files)
{
Console.WriteLine("\t{0}", file);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
var end = DateTimeOffset.Now;
var elapsed = end - start;
Console.WriteLine("======================================");
Console.WriteLine("Exit Time: {0}", end.ToString("O"));
Console.WriteLine("Elapsed Time: {0}", elapsed);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment