Files
FSWatcher/FSWatcher/Program.cs
2022-05-10 11:46:17 +02:00

35 lines
1.6 KiB
C#

using System;
using System.IO;
namespace FSWatcher;
class Program
{
static void Main(string[] args)
{
if (args.Length == 0)
{
Console.WriteLine("FSWatcher.exe DirName");
}
using var watcher = new FileSystemWatcher(args[0]);
watcher.NotifyFilter = NotifyFilters.Attributes
| NotifyFilters.CreationTime
| NotifyFilters.DirectoryName
| NotifyFilters.FileName
| NotifyFilters.LastAccess
| NotifyFilters.LastAccess
| NotifyFilters.LastWrite
| NotifyFilters.Security
| NotifyFilters.Size;
watcher.IncludeSubdirectories = true;
watcher.Changed += (sender, eventArgs) => Console.WriteLine($"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - {eventArgs.ChangeType}: {eventArgs.FullPath}");
watcher.Created += (sender, eventArgs) => Console.WriteLine($"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - {eventArgs.ChangeType}: {eventArgs.FullPath}");
watcher.Deleted += (sender, eventArgs) => Console.WriteLine($"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - {eventArgs.ChangeType}: {eventArgs.FullPath}");
watcher.Renamed += (sender, eventArgs) => Console.WriteLine($"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - {eventArgs.ChangeType}: {eventArgs.OldFullPath} => {eventArgs.FullPath}");
watcher.EnableRaisingEvents = true;
Console.WriteLine("Press enter to exit.");
Console.ReadLine();
}
}