pygmt.which(fname, **kwargs)[source]

Find the full path to specified files.

Reports the full paths to the files given through fname. We look for the file in (1) the current directory, (2) in $GMT_USERDIR (if defined), (3) in $GMT_DATADIR (if defined), or (4) in $GMT_CACHEDIR (if defined).

fname can also be a downloadable file (either a full URL, a @file special file for downloading from the GMT Site Cache, or @earth_relief_* topography grids). In these cases, use option download to set the desired behavior. If download is not used (or False), the file will not be found.

Full option list at


  • G = download
fname : str

The file name that you want to check.

G : bool or str

If the file is downloadable and not found, we will try to download the it. Use True or ‘l’ (default) to download to the current directory. Use ‘c’ to place in the user cache directory or ‘u’ user data directory instead.

path : str

The path of the file, depending on the options used.


If the file is not found.