file dirname

file dirname returns the name of the directory a file is located within.


file dirname name

See Also

file rootname
file tail


Returns a name comprised of all of the path components in name excluding the last element. If name is a relative file name and only contains one path element, it returns "." (or ":" on the pre-OSX Macintosh). If name refers to a root directory, then the root directory is returned. For example,

file dirname c:/ ;# -> c:/

Note that tilde substitution will only be performed if it is necessary to complete the command. For example,

file dirname ~/src/foo.c ;# -> ~/src

, whereas

file dirname ~ ;# -> /home (or something similar).