remove - удаляет
файл или
каталог
Standard C library (
libc,
-lc)
#include <stdio.h>
int remove(const char *pathname);
Функция
remove()
удаляет
имя из
файловой
системы.
Она
вызывает
unlink(2) для
файлов и
rmdir(2)
для
каталогов.
Если
удалённое
имя было
последней
ссылкой на
файл и
больше нет
процессов,
которые
держат
этот файл
открытым,
то данный
файл
удаляется
и место,
которое он
занимает,
освобождается
для
дальнейшего
использования.
Если имя
было
последней
ссылкой на
файл, но
какие-либо
процессы
всё ещё
держат
этот файл
открытым,
файл будет
существовать,
пока
последний
файловый
дескриптор,
указывающий
на него, не
будет
закрыт.
Если имя
указывает
на
символьную
ссылку, то
будет
удалена
ссылка.
Если имя
указывает
на сокет, FIFO
или
устройство,
то имя
будет
удалено, но
процессы,
которые
открыли
объект,
могут
продолжать
его
использовать.
On success, zero is returned. On error, -1 is returned, and
errno is set
to indicate the error.
Ошибки,
которые
возникают
у
unlink(2) и
rmdir(2).
Описание
терминов
данного
раздела
смотрите в
attributes(7).
Интерфейс |
Атрибут |
Значение |
remove() |
Безвредность
в нитях |
MT-Safe |
POSIX.1-2001, POSIX.1-2008, C99, 4.3BSD.
Неточности
в
протоколе NFS
могут
приводить
к
неожиданному
исчезновению
файлов,
которые
всё ещё
используются.
rm(1),
unlink(1),
link(2),
mknod(2),
open(2),
rename(2),
rmdir(2),
unlink(2),
mkfifo(3),
symlink(7)
Русский
перевод
этой
страницы
руководства
был сделан
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]