#include <bitset>
#include <filesystem>
#include <iostream>
#include <memory>
#include "fw/Filter.h"
#include <fw/InotifyService.h>
using namespace std::chrono_literals;
int main(int argc, char* argv[]) {
const auto path = fs::path(argv[1]);
std::cout << "监听: '" << path.string() << "'" << std::endl;
CallBackSignatur _call_back = [](const std::vector<Event::uptr>& events) {
for (const auto& event : events) {
std::cout << std::bitset<16>(event->type)
<< "; " << translate(event->type)
<< ": " << event->relativePath.string() << "\n";
}
};
const auto _filter = std::make_shared<Filter>(_call_back);
auto listenerInstance = InotifyService(_filter, path, 1ms);
std::cout << "任意键退出" << std::endl;
std::cin.ignore();
return 0;
}
![image](https://private-user-images.githubusercontent.com/48396880/337469925-d990c7d5-a301-4e02-8902-85a54016de7d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzMDMxNDEsIm5iZiI6MTczOTMwMjg0MSwicGF0aCI6Ii80ODM5Njg4MC8zMzc0Njk5MjUtZDk5MGM3ZDUtYTMwMS00ZTAyLTg5MDItODVhNTQwMTZkZTdkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjExVDE5NDA0MVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTlhZDBkMGQ1NGRiZTg4ZGI2YWEzNmM3OGVhOWIwNTg5YmFmYmMzZTdjNWQyNWM2MzYxOTRlZmZkNmQ1M2IyMTcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.v8wD2QIYDGkcEQG5xzg8bVZ71UaK6qfQtWt9ugrLjJ4)