Standardowa biblioteka C (libc, -lc)
#include <unistd.h>
int rmdir(const char *pathname);
rmdir() kasuje katalog, który musi być
pusty.
Po pomyślnym zakończeniu zwracane jest zero. Po
błędzie zwracane jest -1 i ustawiane errno,
wskazując błąd.
- EACCES
- Dostęp do zapisu do katalogu zawierającego pathname
nie był dozwolony lub jeden z katalogów w składowej
ścieżki pathname nie zezwala na uprawnienie
przeszukiwania (zob. też path_resolution(7)).
- EBUSY
- pathname jest obecnie używane przez system lub jakiś
proces, co uniemożliwia usunięcie. W Linuksie oznacza to,
że pathname służy obecnie jako punkt
montowania lub jest katalogiem głównym procesu
wywołującego.
- EFAULT
- pathname wskazuje poza dostępną dla
użytkownika przestrzeń adresową.
- EINVAL
- pathname posiada . jako ostatnią
składową.
- ELOOP
- Podczas rozwiązywania pathname napotkano zbyt wiele
dowiązań symbolicznych.
- ENAMETOOLONG
- pathname było zbyt długie.
- ENOENT
- Składowa pathname, która powinna być
katalogiem nie istnieje lub jest wiszącym dowiązaniem
symbolicznym.
- ENOMEM
- Brak pamięci jądra.
- ENOTDIR
- pathname, lub składowa użyta jako katalog w
pathname, w rzeczywistości katalogiem nie jest.
- ENOTEMPTY
- pathname zawiera wpisy inne niż . i ..; albo
pathname ma .. jako ostatnią składową.
POSIX.1 w takim przypadku dopuszcza też EEXIST.
- EPERM
- Katalog zawierający pathname ma ustawiony bit
lepkości (S_ISVTX), a efektywny UID procesu nie jest ani
identyfikatorem użytkownika usuwanego pliku, ani katalogu go
zawierającego oraz proces nie jest uprzywilejowany (Linux: nie ma
przywileju CAP_FOWNER).
- EPERM
- System plików zawierający pathname nie
obsługuje usuwania katalogów.
- EROFS
- pathname odnosi się do katalogu w systemie plików
tylko do odczytu.
POSIX.1-2001, SVr4, 4.3BSD.
Nietrafne rozwiązania w protokole odpowiedzialnym za
obsługę NFS mogą spowodować nieoczekiwane
zniknięcie katalogów, które są
wciąż w użyciu.
Tłumaczenie niniejszej strony podręcznika:
Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną
dokumentacją. Bliższe informacje o warunkach licencji
można uzyskać zapoznając się z
GNU General
Public License w wersji 3 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika
prosimy zgłaszać na adres listy dyskusyjnej
manpages-pl-list@lists.sourceforge.net.