DirectoryList()

Lists the directory and returns the list of files under it as array or query

DirectoryList( path=string, recurse=boolean, listInfo=string, filter=any, sort=string, type=string );

Returns: any

Argument Description
path
string, required

The absolute path of the directory to list the content from.

Alternatively, you can specify IP address as in the following example: DirectoryList("//12.3.123.123/c_drive/test");.

Alias: absolute_path, absolutePath

recurse
boolean, optional

Whether Lucee performs the action on sub-directories:

If true, the contents of all sub-directories are also included.

listInfo
string, optional
  • name: returns an array of names of files and directories.
  • path: returns an array of paths of files and directories. This is the default.
  • query: returns a query.
filter
any, optional

Filter to be used to filter the results:

  • A string that uses "" as a wildcard, for example, ".cfm"
  • a UDF (User defined Function) with signature Boolean function(String path). The function is run for each file in turn; if the function returns true, then the file is will be added to the result; otherwise it will be omitted.
sort
string, optional

Query columns by which to sort a directory listing. To use sort, "listInfo" must be set to "query"!

Delimited list of columns from query output.

Sorting is case sensitive.

To qualify a column, use one of the following values:

  • asc: ascending (a to z) sort order.
  • desc: descending (z to a) sort order.
type
string, optional

type of the result returned:

  • file: includes only filenames
  • dir: includes only directory names
  • all: includes both filenames and directory names

Usage Notes

For ACF compatibility, on Unix systems, the mode column is currently not populated

https://luceeserver.atlassian.net/browse/LDEV-2118

Examples

To return an array of file paths that end with the substring .log from a the directory /var/data:

directoryList("/var/data", false, "path", function(path){ return arguments.path.hasSuffix(".log"); })

See also