Provided by: manpages-es_1.55-10_all bug

NOMBRE

       getcwd, get_current_dir_name, getwd - Obtienen el directorio de trabajo en curso

SINOPSIS

       #include <unistd.h>

       char *getcwd(char *buf, size_t tam);
       char *get_current_dir_name(void);
       char *getwd(char *buf);

DESCRIPCIÓN

       La  función  getcwd()  copia  el  nombre  de camino absoluto del directorio de trabajo en curso al vector
       apuntado por buf, que tiene de longitud tam.

       Si el nombre de camino absoluto antedicho requiriera un búfer mayor de tam elementos, se devolvería  NULL
       y  errno  tomaría el valor ERANGE; una aplicación debería comprobar si ha ocurrido este error, y reservar
       un búfer más grande si fuera necesario.

       Como una extensión al estándar POSIX.1, getcwd() reserva  el  búfer  dinámicamente  empleando  para  ello
       malloc() si buf es NULL a la hora de la llamada. En este caso, el búfer reservado tiene la longitud tam a
       menos que tam sea cero, situación en la que buf se reservará con un tamaño tan grande como sea necesario.
       Es posible (e, incluso, recomendable) liberar con free() los búferes si han sido obtenidos por esta vía.

       get_current_dir_name,  cuyo  prototipo  sólo existe si está definida la macro __USE_GNU, obtendrá memoria
       con malloc(3) para un vector lo bastante grande como para alojar el nombre del directorio en curso. Si la
       variable de ambiente PWD existe y tiene un valor correcto, se devuelve este valor.

       getwd, cuyo prototipo sólo existe si está definida la macro __USE_BSD, no obtendrá memoria con  malloc(3)
       ni  de  ninguna otra forma. El argumento buf deberá ser un puntero a un vector de al menos PATH_MAX bytes
       de largo.  getwd solamente devuelve los primeros PATH_MAX bytes del nombre de camino real.

VALOR DEVUELTO

       NULL en caso de fallo (por ejemplo, si el directorio en curso no es legible), con un valor  apropiado  en
       errno, y buf en caso de acabar con éxito.

CONFORME A

       POSIX.1

VÉASE TAMBIÉN

       chdir(2), free(3), malloc(3).

GNU                                               21 julio 1993                                        GETCWD(3)