NOMBRE¶
remove - borra un nombre y posiblemente el fichero a que se refiere
SINOPSIS¶
#include <stdio.h>
int remove(const char *pathname);
DESCRIPCIÓN¶
remove borra un nombre del sistema de ficheros. La función llama a
unlink para ficheros y a
rmdir para directorios.
Si el nombre borrado es el último enlace a un fichero y este no está
abierto por ningún proceso, el fichero es borrado y el espacio que
utilizaba queda disponible para ser reutilizado.
Si el nombre es el último enlace a un fichero, pero algún proceso
aún lo tiene abierto, el fichero sigue existiendo hasta que sea cerrado
el último descriptor de fichero referente a él.
Si el nombre se refiere a un enlace simbólico, se borra el enlace.
Si el nombre se refiere a un enchufe (socket), fifo, o dispositivo, se borra el
nombre, pero los procesos que tienen este objeto abierto pueden continuar
usándolo.
VALOR DEVUELTO¶
Si hay éxito, se devuelve cero. Si ocurre un error, se devuelve -1, y
errno se actualiza apropiadamente.
ERRORES¶
Los errores que pueden ocurrir son aquellos para las llamadas
unlink(2) y
rmdir(2).
ANSI C, SVID, AT&T, POSIX, X/OPEN, BSD 4.3
FALLOS¶
Algunos fallos desafortunados en el protocolo subyacente a NFS pueden causar la
desaparición inesperada de ficheros que aún estaban siendo usados.
NOTA¶
Bajo libc4 y libc5,
remove era un alias de unlink (y, por lo tanto, no
eliminaba directorios).
VÉASE TAMBIÉN¶
unlink(2),
rename(2),
open(2),
rmdir(2),
mknod(2),
mkfifo(3),
link(2),
rm(1),
unlink(8)