Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
Standard C Library Functionsdirname(3C)


NAME

 dirname - report the parent directory name of a file path name

SYNOPSIS

 
#include <libgen.h>
char *dirname(char *path);

DESCRIPTION

 

The dirname() function takes a pointer to a character string that contains a pathname, and returns a pointer to a string that is a pathname of the parent directory of that file. Trailing '/' characters in the path are not counted as part of the path.

If path does not contain a '/', then dirname() returns a pointer to the string "." . If path is a null pointer or points to an empty string, dirname() returns a pointer to the string "." .

RETURN VALUES

 

The dirname() function returns a pointer to a string that is the parent directory of path. If path is a null pointer or points to an empty string, a pointer to a string "." is returned.

ERRORS

 

No errors are defined.

EXAMPLES

 Example 1. A sample code using the dirname function.
 
Input StringOutput String
"/usr/lib"""/usr"
"/usr/""/"
"usr""/"
"/""/"
".""."
"..""."

The following code fragment reads a path name, changes directory to the parent directory of the named file (see chdir(2)), and opens the file.

 
char path[100], *pathcopy;
int fd;
gets (path);
pathcopy = strdup (path);
chdir (dirname (pathcopy) );
free (pathcopy);
fd = open (basename (path), O_RDONLY);

USAGE

 

The dirname() function may modify the string pointed to by path, and may return a pointer to static storage that may then be overwritten by subsequent calls to dirname().

The dirname() and basename(3C) functions together yield a complete pathname. The expression dirname(path) obtains the pathname of the directory where basename(path) is found.

When compiling multithreaded applications, the _REENTRANT flag must be defined on the compile line. This flag should only be used in multithreaded applications.

ATTRIBUTES

 

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
MT-LevelMT-Safe

SEE ALSO

 

basename(1), chdir(2), basename(3C), attributes(5)


SunOS 5.9Go To TopLast Changed 29 Dec 1996

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.