.. include:: dchmod ====== SYNOPSIS -------- **dchmod [OPTION] PATH ...** DESCRIPTION ----------- Parallel MPI application to recursively change permissions and/or group from a top level directory. dchmod provides functionality similar to :manpage:`chmod(1)`, :manpage:`chown(1)`, and :manpage:`chgrp(1)`. Like :manpage:`chmod(1)`, the tool supports the use of octal or symbolic mode to change the permissions. OPTIONS ------- .. option:: -i, --input FILE Read source list from FILE. FILE must be generated by another tool from the mpiFileUtils suite. .. option:: -u, --owner USER Change owner to specified USER name or numeric user id. .. option:: -g, --group GROUP Change group to specified GROUP name or numeric group id. .. option:: -m, --mode MODE The mode to apply to each item. MODE may be octal or symbolic syntax similar to :manpage:`chmod(1)`. In symbolic notation, "ugoa" are supported as are "rwxX". As with chmod, if no leading letter "ugoa" is provided, mode bits are combined with umask to determine the actual mode. .. option:: -f, --force Attempt to change every item. By default, dchmod avoids unncessary chown and chmod calls, for example trying to change the group on an item that already has the correct group, or trying to change the group on an item that is not owned by the user running the tool. With --force, dchmod executes chown/chmod calls on every item. .. option:: -s, --silent Suppress EPERM error messages, which is useful when running dchmod on large directories with files owned by other users. .. option:: --exclude REGEX Do not modify items whose full path matches REGEX, processed by :manpage:`regexec(3)`. .. option:: --match REGEX Only modify items whose full path matches REGEX, processed by :manpage:`regexec(3)`. .. option:: -n, --name Change --exclude and --match to apply to item name rather than its full path. .. option:: --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. .. option:: -v, --verbose Run in verbose mode. Prints a list of statistics including the number of files walked, the number of levels there are in the directory tree, and the number of files the command operated on, and the files/sec rate for each of those. .. option:: -q, --quiet Run tool silently. No output is printed. .. option:: -h, --help Print the command usage, and the list of options available. EXAMPLES -------- 1. Use octal mode to change permissions: ``mpirun -np 128 dchmod --mode 755 /directory`` 2. Set group and mode in a single command using symbolic mode: ``mpirun -np 128 dchmod --group mygroup --mode u+r,g+rw /directory`` 3. Set owner and group, leaving permissions the same: ``mpirun -np 128 dchmod --owner user1 --group mygroup /directory`` 4. Change permissions to u+rw on all items EXCEPT those whose name match regex: ``mpirun -np 128 dchmod --name --exclude ‘afilename’ --mode u+rw /directory`` Note: You can use --match to change file permissions on all of the files/directories that match the regex. SEE ALSO -------- The mpiFileUtils source code and all documentation may be downloaded from