Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
REMOVE(3)			      GNU			     REMOVE(3)

NAME
       remove -	delete a name and possibly the file it refers to

SYNOPSIS
       #include	<stdio.h>

       int remove(const	char *pathname);

DESCRIPTION
       remove  deletes a name from the filesystem.  It calls unlink for	files,
       and rmdir for directories.

       If the removed name was the last	link to	a file and no  processes  have
       the  file  open	the file is deleted and	the space it was using is made
       available for reuse.

       If the name was the last	link to	a file but any	processes  still  have
       the file	open the file will remain in existence until the last file de-
       scriptor	referring to it	is closed.

       If the name referred to a symbolic link the link	is removed.

       If the name referred to a socket, fifo or device	the name for it	is re-
       moved but processes which have the object open may continue to use it.

RETURN VALUE
       On  success,  zero is returned.	On error, -1 is	returned, and errno is
       set appropriately.

ERRORS
       EFAULT pathname points outside your accessible address space.

       EACCES Write access to the directory containing pathname	is not allowed
	      for  the	process's  effective uid, or one of the	directories in
	      pathname did not allow search (execute) permission.

       EPERM  The directory containing pathname	has the	 sticky-bit  (S_ISVTX)
	      set  and	the  process's effective uid is	neither	the uid	of the
	      file to be deleted nor that of the directory containing it.

       ENAMETOOLONG
	      pathname was too long.

       ENOENT A	directory component in pathname	does not exist or  is  a  dan-
	      gling symbolic link.

       ENOTDIR
	      A	 component  used as a directory	in pathname is not, in fact, a
	      directory.

       ENOMEM Insufficient kernel memory was available.

       EROFS  pathname refers to a file	on a read-only filesystem.

CONFORMING TO
       ANSI C, SVID, AT&T, POSIX, X/OPEN, BSD 4.3

BUGS
       Infelicities in the protocol underlying NFS can	cause  the  unexpected
       disappearance of	files which are	still being used.

NOTE
       Under  libc4 and	libc5, remove was an alias for unlink (and hence would
       not remove directories).

SEE ALSO
       unlink(2), rename(2), open(2), rmdir(2),	mknod(2), mkfifo(3),  link(2),
       rm(1), unlink(8)

Linux				  1994-07-13			     REMOVE(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | CONFORMING TO | BUGS | NOTE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=remove&sektion=3&manpath=Red+Hat+9>

home | help