Browse Source

mfm_dup.cpp

mfm
Antonio SJ Musumeci 2 months ago
parent
commit
ff35f87a05
  1. 41
      src/mfm_dup.cpp

41
src/mfm_dup.cpp

@ -20,31 +20,34 @@ mfm::dup(const Opts::Dup &opts_)
{ {
std::vector<std::filesystem::path> paths; std::vector<std::filesystem::path> paths;
paths = opts_.paths;
if(fs::is_regular_file(opts_.path))
{
}
else if(fs::is_directory(opts_.path))
for(const auto &path : paths)
{ {
auto dir_opts = (fs::directory_options::follow_directory_symlink |
fs::directory_options::skip_permission_denied);
for(const fs::directory_entry &de :
fs::recursive_directory_iterator(opts_.path,dir_opts))
if(fs::is_regular_file(opts_.path))
{
}
else if(fs::is_directory(opts_.path))
{ {
if(!str::startswith(de.path().filename().string(),".dup_"))
continue;
auto dir_opts = (fs::directory_options::follow_directory_symlink |
fs::directory_options::skip_permission_denied);
for(const auto &de :
fs::directory_iterator(de.path().parent_path()))
for(const fs::directory_entry &de :
fs::recursive_directory_iterator(opts_.path,dir_opts))
{ {
fmt::println("{}",de.path().filename().string());
if(!str::startswith(de.path().filename().string(),".dup_"))
continue;
for(const auto &de :
fs::directory_iterator(de.path().parent_path()))
{
fmt::println("{}",de.path().filename().string());
}
} }
} }
}
else
{
throw std::runtime_error("invalid file type");
else
{
throw std::runtime_error("invalid file type");
}
} }
} }
Loading…
Cancel
Save