dicomfind(1) vtk-dicom CLI



dicomfind [options] <directory> ...


Follow symbolic links (default).
Do not follow symbolic links.
-k tag=value
Provide an attribute to be queried and matched.
-q <query.txt>
Provide a file to describe the find query.
-u <uids.txt>
Provide a file that contains a list of UIDs.
-maxdepth n
Set the maximum directory depth.
-name pattern
Set a pattern to match (with "*" or "?").
Restrict the search to files with PixelData.
Find all files in series if even one file matches.
Print the filenames of all matched files (default).
Print the filenames with terminating null, for xargs.
-exec ... +
Execute the given command for every series matched.
-exec ... \;
Execute the given command for every file matched.
-execdir ... +
Go to directory and execute command on every series.
-execdir ... \; Go to directory and execute command on every file.
Print a brief help message.
Print the software version.

This command can be used to locate DICOM files. It shares many features with the UNIX "find" command. When searching for files with a specific attribute (with "-k"), the tag can be specified in the form GGGG,EEEE or with its canonical name e.g. Modality=MR from the DICOM dictionary. Alternately, the tags can be listed in a query file given with the "-q" option (one tag per line). Attributes nested within sequences can be specified by giving a tag path e.g. "-k Tag1/Tag2/Tag3". Either a forward slash or a backslash can be used to separate the components of the path. Private tags should be preceded by the private dictionary name in square brackets.

The "-exec" and "-execdir" arguments cause dicomfind to run the specified program on the found files. For example, to dump each file one would use "-exec dicomdump {} \;" where each instance of {} will be replaced by a found file, and ";" indicates the end of the args to dicomdump. Alternately, if "+" is used to end the args, then the program will be run on each DICOM series and {} will be replaced by all files in the series. The "-execdir" argument is similar, except that it runs the program from within the directory of the file (or files), and {} is replaced by just the filenames instead of with the full paths.


This manual page was written by Mathieu Malaterre <[email protected]> for the Debian GNU/Linux system, but may be used by others.