NOME
unlink − apaga um nome e talvez o arquivo ao qual se refere
SINOPSE
#include <unistd.h>
int unlink(const char *pathname);
DESCRIÇÃO
unlink apaga um nome a partir do sistema de arquivos. Se aquele nome tem a última ligação simbólica para uma arquivo e não processa o arquivo aberto, o arquivo é deletado e o espaço dele é feito disponível para ser reutilizado.
Se o nome tem uma última ligação para um arquivo mas qualquer processo tem o arquivo aberto o arquivo ficará existente até o último descritor de arquivo referenciado para ele ser fechado.
Se o nome referenciado para uma ligação simbólica é um ligação removida.
Se o nome referenciado para um socket, fifo ou dispositivo foi removido mas processos que têm o objeto aberto podem continuar usá-lo.
VALORES RETORNADOS
Em caso de sucesso, zero é retornado. Caso contrário, −1 é retornado, e errno é selecionado adequadamente.
ERROS
| 
 EACCES  | 
 Acesso de escrita para o diretório contendo pathname não é permitido para uid efetivas de processos, ou um dos diretórios em pathname não tem permissão de procura (execução).  | 
EPERM ou EACCES
O diretório contendo pathname tem um bit contrário selecionado (S_ISVTX) e a uid efetiva do processo é nenhuma uid do arquivo para ser apagado não naquele diretório que o contém.
| 
 EPERM  | 
 O arquivo pathname é um diretório.  | ||
| 
 EFAULT  | 
 pathname aponta para fora do espaço de endereços acessível para você.  | 
ENAMETOOLONG
pathname é muito longo.
| 
 ENOENT  | 
 Um diretório componente no pathname não existe ou é uma ligação simbólica rompida.  | 
ENOTDIR
Um componente usado com um diretório em pathname não é, de fato, um diretório.
| 
 EISDIR  | 
 pathname refere-se a um diretório.  | ||
| 
 ENOMEM  | 
 Memória do kernel disponível é insuficiente.  | ||
| 
 EROFS  | 
 pathname refere-se para um arquivo em um sistema de arquivos somente de leitura.  | ||
| 
 ELOOP  | 
 Muitas ligações simbólicas são encontradas na tradução do pathname.  | ||
| 
 EIO  | 
 Um erro de E/S ocorreu.  | 
DE ACORDO COM
SVr4, SVID, POSIX, X/OPEN, 4.3BSD. SVr4 documenta as condições de erros adicionais EBUSY, EINTR, EMULTIHOP, ETXTBUSY, ENOLINK.
PROBLEMAS
Infelicidades no protocolo base do NFS pode causar o inesperado desaparecimento de arquivos que ainda estão sendo usados.
VEJA TAMBÉM
link(2), rename(2), open(2), rmdir(2), mknod(2), mkfifo(3), remove(3), rm(1)
TRADUZIDO POR LDP-BR em 21/08/2000
André L. Fassone Canova <lonelywolf [AT] blv.br> (tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx [AT] xxxxxx.xx> (revisão)