Scroll to navigation

futimesat(2) System Calls Manual futimesat(2)

НАИМЕНОВАНИЕ

futimesat - изменяет временные отметки файла, определяемого относительно файлового дескриптора каталога

БИБЛИОТЕКА

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

ОБЗОР

#include <fcntl.h>            /* определения констант AT_* */
#include <sys/time.h>
[[deprecated]] int futimesat(int dirfd, const char *pathname,
                             const struct timeval times[2]);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

futimesat():


_GNU_SOURCE

ОПИСАНИЕ

Данный системный вызов устарел. Используйте вместо него utimensat(2).

Системный вызов futimesat() работает также как системный вызов utimes(2), за исключением случаев, описанных в данной справочной странице.

Если в pathname задан относительный путь, то он считается относительно каталога, на который ссылается файловый дескриптор dirfd (а не относительно текущего рабочего каталога вызывающего процесса, как это делается в utimes(2)).

Если в pathname задан относительный путь и dirfd равно специальному значению AT_FDCWD, то pathname рассматривается относительно текущего рабочего каталога вызывающего процесса (как utimes(2)).

Если pathname является абсолютным, то dirfd игнорируется. (См. openat(2) для объяснения того, почему аргумент dirfd полезен.)

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

При успешном выполнении futimesat() возвращает 0; при ошибке — -1, а в errno задаётся причина ошибки.

ОШИБКИ

В futimesat() могут возникнуть те же ошибки, что и в utimes(2). Также, в futimesat() могут возникнуть следующие ошибки:

В pathname содержится относительный путь, но значение dirfd не равно AT_FDCWD и не является правильным файловым дескриптором.
Значение pathname содержит относительный путь и dirfd содержит файловый дескриптор, указывающий на файл, а не на каталог.

ВЕРСИИ

glibc

Если pathname равно NULL, то обёрточная функция glibc futimesat() обновляет временные метки файла, указанного в dirfd.

СТАНДАРТЫ

Отсутствуют.

ИСТОРИЯ

Linux 2.6.16, glibc 2.4.

It was implemented from a specification that was proposed for POSIX.1, but that specification was replaced by the one for utimensat(2).

Подобный системный вызов есть в Solaris.

ПРИМЕЧАНИЯ

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

stat(2), utimensat(2), utimes(2), futimes(3), path_resolution(7)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

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

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

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