Scroll to navigation

remove(3) Library Functions Manual remove(3)

ИМЯ

remove - удаляет файл или каталог

БИБЛИОТЕКА

Стандартная библиотека языка C (libc, -lc)

СИНТАКСИС

#include <stdio.h>
int remove(const char *pathname);

ОПИСАНИЕ

Функция remove() удаляет имя из файловой системы. Она вызывает unlink(2) для файлов и rmdir(2) для каталогов.

Если удалённое имя было последней ссылкой на файл и больше нет процессов, которые держат этот файл открытым, то данный файл удаляется и место, которое он занимает, освобождается для дальнейшего использования.

Если имя было последней ссылкой на файл, но какие-либо процессы всё ещё держат этот файл открытым, файл будет существовать, пока последний файловый дескриптор, указывающий на него, не будет закрыт.

Если имя указывает на символьную ссылку, то будет удалена ссылка.

Если имя указывает на сокет, FIFO или устройство, то имя будет удалено, но процессы, которые открыли объект, могут продолжать его использовать.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении возвращается 0. При ошибке возвращается -1, а в errno содержится код ошибки.

ОШИБКИ

Ошибки, которые возникают у unlink(2) и rmdir(2).

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
remove() Безвредность в нитях MT-Safe

СТАНДАРТЫ

C11, POSIX.1-2008.

ИСТОРИЯ

POSIX.1-2001, C89, 4.3BSD.

ОШИБКИ

Неточности в протоколе NFS могут приводить к неожиданному исчезновению файлов, которые всё ещё используются.

СМОТРИТЕ ТАКЖЕ

rm(1), unlink(1), link(2), mknod(2), open(2), rename(2), rmdir(2), unlink(2), mkfifo(3), symlink(7)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) aereiae <aereiae@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Lockal <lockalsash@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Баринов Владимир и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Справочные страницы Linux 6.8