rmdir(2)

NAZWA
rmdir - usuwa katalog

BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)

SKŁADNIA
#include <unistd.h>

int rmdir(const char *path);

OPIS
rmdir() kasuje katalog, który musi być pusty.

WARTOŚĆ ZWRACANA
Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i ustawiane errno, wskazując błąd.

BŁĘDY

EACCES
    Dostęp do zapisu do katalogu zawierającego path nie był dozwolony lub jeden z katalogów w składowej ścieżki path nie zezwala na uprawnienie przeszukiwania (zob. też path_resolution(7)).

EBUSY
    path jest obecnie używane przez system lub jakiś proces, co uniemożliwia usunięcie. W Linuksie oznacza to, że path służy obecnie jako punkt montowania lub jest katalogiem głównym procesu wywołującego.

EFAULT
    path wskazuje poza dostępną dla użytkownika przestrzeń adresową.

EINVAL
    path posiada . jako ostatnią składową.

ELOOP
    Podczas rozwiązywania path napotkano zbyt wiele dowiązań symbolicznych.

ENAMETOOLONG
    path była zbyt długa.

ENOENT
    Składowa path, która powinna być katalogiem nie istnieje lub jest wiszącym dowiązaniem symbolicznym.

ENOMEM
    Brak pamięci jądra.

ENOTDIR
    path, lub składowa użyta jako katalog w path, w rzeczywistości katalogiem nie jest.

ENOTEMPTY
    path zawiera wpisy inne niż . i ..; albo path ma .. jako ostatnią składową. POSIX.1 w takim przypadku dopuszcza też EEXIST.

EPERM
    Katalog zawierający path 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 path nie obsługuje usuwania katalogów.

EROFS
    path odnosi się do katalogu w systemie plików tylko do odczytu.

STANDARDY
POSIX.1-2024.

HISTORIA
POSIX.1-2001, SVr4, 4.3BSD.

USTERKI
Nietrafne rozwiązania w protokole odpowiedzialnym za obsługę NFS mogą spowodować nieoczekiwane zniknięcie katalogów, które są wciąż w użyciu.

ZOBACZ TAKŻE
rm(1), rmdir(1), chdir(2), chmod(2), mkdir(2), rename(2), unlink(2), unlinkat(2)

TŁUMACZENIE
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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.