diff --git a/applications/utilities/postProcessing/miscellaneous/foamListTimes/foamListTimes.C b/applications/utilities/postProcessing/miscellaneous/foamListTimes/foamListTimes.C index 1cd84f1851ca69b678d27e40442fbae5f6d92ad6..8659f0205fd71743bf0d3b5a9d7ac5f70bb6827a 100644 --- a/applications/utilities/postProcessing/miscellaneous/foamListTimes/foamListTimes.C +++ b/applications/utilities/postProcessing/miscellaneous/foamListTimes/foamListTimes.C @@ -31,6 +31,8 @@ Usage - foamListTimes [OPTION] + \param -rm \n + Remove selected time directories \param -processor \n List times from processor0/ directory @@ -56,6 +58,11 @@ int main(int argc, char *argv[]) "processor", "list times from processor0/ directory" ); + argList::addBoolOption + ( + "rm", + "remove selected time directories" + ); #include "setRootCase.H" label nProcs = 0; @@ -117,9 +124,37 @@ int main(int argc, char *argv[]) args ); - forAll(timeDirs, timeI) + if (args.optionFound("rm")) { - Info<< timeDirs[timeI].name() << endl; + if (args.optionFound("processor")) + { + for (label procI=0; procI<nProcs; procI++) + { + fileName procPath + ( + args.path()/(word("processor") + name(procI)) + ); + + forAll(timeDirs, timeI) + { + rmDir(procPath/timeDirs[timeI].name()); + } + } + } + else + { + forAll(timeDirs, timeI) + { + rmDir(args.path()/timeDirs[timeI].name()); + } + } + } + else + { + forAll(timeDirs, timeI) + { + Info<< timeDirs[timeI].name() << endl; + } } return 0;