rmdir - удалить
каталог
Standard C library (
libc,
-lc)
#include <unistd.h>
int rmdir(const char *pathname);
rmdir() удаляет
каталог,
который
должен
быть пуст.
On success, zero is returned. On error, -1 is returned, and
errno is set
to indicate the error.
- EACCES
- Нет прав
на запись в
каталог,
содержащийся
в pathname, или в
одном из
каталогов
в pathname не
разрешён
поиск (см.
также path_resolution(7)).
- EBUSY
- В данный
момент pathname
используется
системой
или одним
из
процессов,
что
предотвращает
удаление. В
Linux это
означает,
что pathname
используется
в качестве
точки
монтирования
или
является
корневым
каталогом
вызвавшего
процесса.
- EFAULT
- Аргумент
pathname
указывает
за пределы
доступного
адресного
пространства.
- EINVAL
-
pathname
содержит .
в качестве
последнего
компонента.
- ELOOP
- Во время
определения
pathname
встретилось
слишком
много
символьных
ссылок.
- ENAMETOOLONG
-
pathname
слишком
длинен.
- ENOENT
- Один из
каталогов
в pathname не
существует
или
является
повисшей
символьной
ссылкой.
- ENOMEM
- Недостаточное
количество
памяти
ядра.
- ENOTDIR
-
pathname, или
его
компонент,
используемый
в качестве
каталога в
pathname,
фактически,
не
является
каталогом.
- ENOTEMPTY
-
pathname
содержит
элементы,
отличные
от . и .. ; или
последним
компонентом
pathname
является
... POSIX.1 также
позволяет
возвращать
EEXIST в такой
ситуации.
- EPERM
- На
каталоге,
содержащемся
в pathname,
установлен
закрепляющий
(sticky) бит ( S_ISVTX) и
эффективный
идентификатор
пользователя
не
совпадает
с
пользовательским
ID файла или
каталога,
его
содержащего,
что
требуется
для
удаления, и
процесс не
имеет прав
(Linux: не имеет
мандата
CAP_FOWNER).
- EPERM
- Файловая
система,
содержащая
pathname, не
поддерживает
удаление
каталогов.
- EROFS
-
pathname
указывает
на файл в
файловой
системе,
доступной
только для
чтения.
POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.
Неточности
в
протоколе NFS
могут
приводить
к
неожиданному
исчезновению
каталогов,
которые
всё ещё
используются.
rm(1),
rmdir(1),
chdir(2),
chmod(2),
mkdir(2),
rename(2),
unlink(2),
unlinkat(2)
Русский
перевод
этой
страницы
руководства
был сделан
aereiae <
[email protected]>, Azamat Hackimov
<
[email protected]>, Dmitriy S. Seregin <
[email protected]>,
Katrin Kutepova <
[email protected]>, Lockal
<
[email protected]>, Yuri Kozlov <
[email protected]>,
Баринов
Владимир и
Иван
Павлов <
[email protected]>
Этот
перевод
является
бесплатной
документацией;
прочитайте
Стандартную
общественную
лицензию GNU
версии 3
или более
позднюю,
чтобы
узнать об
условиях
авторского
права. Мы не
несем
НИКАКОЙ
ОТВЕТСТВЕННОСТИ.
Если вы
обнаружите
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
отправьте
электронное
письмо на
[email protected]