Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dirname(3G) — Amiga System V Release 4 Version 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chdir(2)

basename(3G)

basename(1)



dirname(3G)       MISC. REFERENCE MANUAL PAGES        dirname(3G)



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

SYNOPSIS
     cc [flag ...] file ...  -lgen [library ...]

     #include <libgen.h>

     char *dirname (char *path);

DESCRIPTION
     Given a pointer to a null-terminated character  string  that
     contains  a file system path name, dirname returns a pointer
     to a static constant string that is the parent directory  of
     that  file.   In doing this, it sometimes places a null byte
     in the path name after the next to last element, so the con-
     tent  of path must be disposable.  Trailing ``/'' characters
     in the path are not counted as part of the path.

     If path or *path is zero, a pointer  to  a  static  constant
     ``.''  is  returned.   dirname and basename together yield a
     complete path name.  dirname (path) is the  directory  where
     basename (path) is found.

EXAMPLES
     A simple file name and the strings ``.'' and ``..'' all have
     ``.''  as their return value.
                    Input string   Output pointer
                    _____________________________
                    /usr/lib       /usr
                    /usr/          /
                    usr            .
                    /              /
                    .              .
                    ..             .

     The following code reads a path name, changes  directory  to
     the  appropriate  directory  [see  chdir(2)],  and opens the
     file.

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

SEE ALSO
     chdir(2), basename(3G).
     basename(1) in the User's Reference Manual.




                          Last change:                          1



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026