drm

SYNOPSIS

drm [OPTION] PATH...

DESCRIPTION

Parallel MPI application to recursively delete a directory and its contents.

drm is a tool for removing files recursively in parallel. drm behaves like rm -rf, but it is faster.

Note

DO NOT USE SHELL REGEX!!! The --match and --exclude options use POSIX regex syntax. Because of this make sure that the shell does not try to interpret your regex before it gets passed to the program. You can generally use quotes around your regex to prevent the shell from expanding. An example of this using the --match option with --dryrun would be:

mpirun -np 128 drm --dryrun -v --name --match 'file_.*' /path/to/dir/*

OPTIONS

-i, --input FILE

Read source list from FILE. FILE must be generated by another tool from the mpiFileUtils suite.

-o, --output FILE

Write the list of items drm attempts to delete to FILE in mpiFileUtils format. Format can be changed with --text option.

-t, --text

Must be used with the --output option. Write list of items drm attempts to delete to FILE in ascii text format.

-l, --lite

Walk file system without stat.

--stat

Walk file system with stat.

--exclude REGEX

Do not remove items whose full path matches REGEX, processed by regexec(3).

--match REGEX

Only remove items whose full path matches REGEX, processed by regexec(3).

--name

Change --exclude and match to apply to item name rather than its full path.

--dryrun

Print a list of files that would be deleted without deleting them. This is useful to check list of items satisfying --exclude or --match options before actually deleting anything.

--aggressive

This option will delete files during the walk phase, and then delete directories by level after the walk in drm. You cannot use this option with --dryrun.

-T, --traceless

Delete child items without updating the mtime on their parent directory.

--progress N

Print progress message to stdout approximately every N seconds. The number of seconds must be a non-negative integer. A value of 0 disables progress messages.

-v, --verbose

Run in verbose mode.

-q, --quiet

Run tool silently. No output is printed.

-h, --help

Print a brief message listing the drm(1) options and usage.

EXAMPLES

  1. To delete a directory and its contents:

mpirun -np 128 drm -v /dir/to/delete

  1. Delete all items (files and directories) ending with .core from directory tree:

mpirun -np 128 drm --match '.core$' /dir/to/delete/from

  1. List items that would be deleted without removing them:

mpirun -np 128 drm --dryrun --match '.core$' /dir/to/delete/from

  1. Delete all items named foo:

mpirun -np 128 drm --name --match '^foo$' /dir/to/delete/from

SEE ALSO

The mpiFileUtils source code and all documentation may be downloaded from <https://github.com/hpc/mpifileutils>