The FILE_WHICH function separates a specified file path into its component directories, and searches each directory in turn for a specific file. This command is modeled after the UNIX which(1) command, but is written in the IDL language and is available on all platforms. Its source code can be found in the file in the lib subdirectory of the IDL distribution.


To find the location of the file:

Result = FILE_WHICH('')

To find the location of the UNIX ls command:

Result = FILE_WHICH(getenv('PATH'), 'ls')


Result = FILE_WHICH( [Path, ] File [, /INCLUDE_CURRENT_DIR] )

Return Value

Returns the path for the first file for the given name found by searching the specified path. If FILE_WHICH does not find the desired file, an empty string is returned.



A search path to be searched. If Path is not present, the value of the IDL !PATH system variable is used.


The file to look for in the directories given by Path.



If set, FILE_WHICH looks in the current directory before starting to search Path for File. When IDL searches for a routine to compile, it looks in the current working directory before searching !PATH. The INCLUDE_CURRENT_DIR keyword allows FILE_WHICH to mimic this behavior.

Version History



See Also