<<prev file | next file >>    view single page | view frames    summary: fields | routine    details: routine

Utilities/

find.pro

based on file_search, but it is possible to specify a set of possibles names and a different set of possibles directories names. By default look for files included in !path all file_search keywords can be used.

topfind find a file

result = find(filein, IODIRECTORY=IODIRECTORY, RECURSIVE=RECURSIVE, REPERTOIRE=REPERTOIRE, NOPRO=NOPRO, ONLYPRO=ONLYPRO, ONLYNC=ONLYNC, UNIQUE=UNIQUE, FIRSTFOUND=FIRSTFOUND, LOOKALLDIR=LOOKALLDIR, _extra=_extra)

Return value

A scalar or array variable of string type, containing the name (with the full path of the matching files. If no files exist with names matching the input arguments, find returns the scalar string : 'NOT FOUND'

Parameters

filein        in required

A scalar or array variable of string type, containing file names to match. Input names specifications may contain wildcard characters, enabling them to match multiple files (see file_search for more informations). By default and if necessary, find is looking for filename and also for filename completed with '.pro'

Keywords

IODIRECTORY        default: !path

A scalar or array variable of string type, containing directories names where we are looking for the file. Different directories can be separated by path_sep(/search_path) (':' on unix type machine) as it is done to define !path. Note that if filename's dirname is different from '.', this keyword is not taken into account.

RECURSIVE       

performs recursive searching of directory hierarchies. In a recursive search, find looks recursively for any and all subdirectories in the file hierarchy rooted at the IODIRECTORY argument.

REPERTOIRE       

obsolete. keep for compatibility, use directory keyword

NOPRO       

activate to avoid the automatic search of filename completed with '.pro'

ONLYPRO       

force to look only at file ending with .pro

ONLYNC       

force to look only at file ending with .nc

UNIQUE       

activate to make sure that each element of the output vector is unique.

FIRSTFOUND       

activate this keyword to stop looking for the file as soon as we found one.

LOOKALLDIR       

activate to look for the file with a recursive search in iodir, homedir, !path + the DATA:TestsData directory if it exists.

_extra       

used to pass your keywords

Examples

IDL> print, find('*loadct') /usr/local/rsi/idl_6.0/lib/utilities/xloadct.pro /usr/local/rsi/idl_6.0/lib/loadct.pro IDL> print, find('*loadct', iodir=!dir,/recursive) /usr/local/rsi/idl_6.0/lib/loadct.pro /usr/local/rsi/idl_6.0/lib/utilities/xloadct.pro IDL> print, find('*loadct.pro') /usr/local/rsi/idl_6.0/lib/utilities/xloadct.pro /usr/local/rsi/idl_6.0/lib/loadct.pro IDL> print, find('*loadct',/nopro) NOT FOUND IDL> print, find('*loadct', iodir = '/usr/local/rsi/idl_6.0/lib') /usr/local/rsi/idl_6.0/lib/loadct.pro IDL> print, find('*loadct', iodir = '/usr/local/rsi/idl_6.0/lib', /test_write) NOT FOUND IDL> print, find('*loadct', iodir = '/usr/local/rsi/idl_6.0/lib', /recursive) /usr/local/rsi/idl_6.0/lib/loadct.pro /usr/local/rsi/idl_6.0/lib/utilities/xloadct.pro IDL> print, find('mesh*', iodirectory = [iodir, !path]) /Users/sebastie/DATA/ORCA2/meshmaskORCA2closea.nc /Users/sebastie/IDL/meshmaskclosesea.pro /Users/sebastie/IDL/meshmaskclosesea.pro~ /Users/sebastie/SAXO_RD/Obsolete/meshlec.pro /usr/local/rsi/idl_6.0/lib/mesh_obj.pro

Version history

Version

$Id: find.pro 136 2006-07-10 15:20:19Z pinsard $

History

Sebastien Masson (smasson@lodyc.jussieu.fr) 28/4/1999 6/7/1999: compatibility mac and windows June 2005: Sebastien Masson: cleaning, use for file_* functions
Produced by IDLdoc 2.0.