truncate

TRUNCATE(2)     Ð ÑководÑÑво пÑогÑаммиÑÑа Linux     TRUNCATE(2)



ÐÐÐÐÐÐÐÐ
       truncate, ftruncate - обÑезаÑÑ Ñайл до Ñказанной
       длинÑ

ÐÐ ÐТÐÐЯ СÐÐÐÐÐ
       #include <unistd.h>

       int truncate(const char *path, off_t length);
       int ftruncate(int fd, off_t length);

ÐÐÐСÐÐÐÐ
       truncate обÑÐµÐ·Ð°ÐµÑ Ñайл Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ path или
       обознаÑеннÑй ÑайловÑм деÑкÑипÑоÑом fd до
       length байÑ.  ÐÑли Ñайл до ÑÑой опеÑаÑии бÑл
       длиннее, Ñо оÑÑавÑиеÑÑ Ð´Ð°Ð½Ð½Ñе ÑеÑÑÑÑÑÑ.  ÐÑли
       Ñайл бÑл коÑоÑе, Ñо не опÑеделено, оÑÑанеÑÑÑ
       ли длина Ñайла неизменной или же она
       ÑвелиÑиÑÑÑ.  РпоÑледнем ÑлÑÑае новÑй кÑÑок
       Ñайла бÑÐ´ÐµÑ ÑодеÑжаÑÑ Ð½ÑлевÑе байÑÑ.  ÐÑи
       иÑполÑзовании ftruncate Ñайл должен бÑÑÑ Ð¾ÑкÑÑÑ
       Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи.

ÐÐÐÐÐ ÐЩÐÐÐÐÐ ÐÐÐЧÐÐÐÐ
       Ð ÑлÑÑае ÑÑпеÑа возвÑаÑаеÑÑÑ Ð½Ð¾Ð»Ñ.  ÐÑи оÑибке
       возвÑаÑаеÑÑÑ -1, а errno ÑÑÑанавливаеÑÑÑ Ð´Ð¾Ð»Ð¶Ð½Ñм
       обÑазом.


ÐШÐÐÐÐ
       ÐÐ»Ñ truncate:

       ENOTDIR

              ÐÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ Ð¿ÑÑи, иÑполÑзованнÑй как
              каÑалог, в дейÑÑвиÑелÑноÑÑи ÑаковÑм не
              ÑвлÑеÑÑÑ.


       ENAMETOOLONG
              ÐÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ Ð¿ÑÑи пÑевÑÑÐ°ÐµÑ 255 Ñимволов
              или веÑÑ Ð¿ÑÑÑ Ð¿ÑевÑÑÐ°ÐµÑ 1023 Ñимвола.

       ENOENT Файл не ÑÑÑеÑÑвÑеÑ.

       EACCES Родном из компоненÑов пÑÑи не
              ÑазÑеÑен поиÑк.

       EACCES ÐолÑзоваÑÐµÐ»Ñ Ð½Ðµ Ð¸Ð¼ÐµÐµÑ Ð¿Ñав на запиÑÑ Ð²
              ÑказаннÑй Ñайл.

       ELOOP  ÐÑи пÑоÑождении пÑÑи вÑÑÑеÑено ÑлиÑком
              много ÑимволиÑеÑÐºÐ¸Ñ ÑÑÑлок.

       EISDIR УказаннÑй Ñайл ÑвлÑеÑÑÑ ÐºÐ°Ñалогом.

       EROFS  Файл наÑодиÑÑÑ Ð½Ð° Ñайловой ÑиÑÑеме,
              ÑмонÑиÑованной ÑолÑко Ð´Ð»Ñ ÑÑениÑ.

       ETXTBSY
              Файл ÑвлÑеÑÑÑ Ð¸ÑполнÑемÑм и в наÑÑоÑÑий
              Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð²ÑполнÑеÑÑÑ.

       EIO    ÐÑи обновлении inode пÑоизоÑла оÑибка
              ввода-вÑвода.

       EFAULT path ÑказÑÐ²Ð°ÐµÑ Ð·Ð° пÑÐµÐ´ÐµÐ»Ñ Ð´Ð¾ÑÑÑпного
              адÑеÑного пÑоÑÑÑанÑÑва.

       ÐÐ»Ñ ftruncate:

       EBADF  ÐевеÑнÑй ÑайловÑй деÑкÑипÑÐ¾Ñ fd.

       EINVAL ÐеÑкÑипÑÐ¾Ñ fd ÑÑÑлаеÑÑÑ Ð½Ð° ÑокеÑ, а не на
              Ñайл.

       EINVAL ÐеÑкÑипÑÐ¾Ñ fd не оÑкÑÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи.

СÐÐТÐÐТСТÐÐРСТÐÐÐÐРТÐÐ
       4.4BSD, SVr4 (ÑÑи ÑиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ Ð²Ð¿ÐµÑвÑе
       поÑвилиÑÑ Ð² BSD 4.2).  SVr4 докÑменÑиÑÑеÑ
       дополниÑелÑнÑе ÐºÐ¾Ð´Ñ Ð¾Ñибок truncate: EINTR, EMFILE,
       EMULTIHP, ENAMETOOLONG, ENFILE, ENOLINK, ENOTDIR.  SVr4
       докÑменÑиÑÑÐµÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸ÑелÑнÑе ÐºÐ¾Ð´Ñ Ð¾Ñибок
       ftruncate EAGAIN и EINTR.  POSIX ÑодеÑÐ¶Ð¸Ñ ftruncate, но не
       truncate.  СÑандаÑÑ POSIX не опÑеделÑеÑ, ÑÑо
       пÑоизойдеÑ, еÑли в Ñайле менÑÑе байÑ, Ñем
       length.

ÐШÐÐÐÐ Ð Ð ÐÐÐÐÐÐЦÐÐ
       ÐÑи ÑиÑÑемнÑе вÑÐ·Ð¾Ð²Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ Ð¾Ð±Ð¾Ð±ÑенÑ,
       ÑÑÐ¾Ð±Ñ ÑазÑеÑиÑÑ Ð¾ÑбÑаÑÑвание ÑелÑÑ ÑÑаÑÑков
       Ñайла.

СÐÐТРРТÐÐÐÐ
       open(2)

ÐÐÐ ÐÐÐÐ
       Copyright (C) Alexey Mahotkin <alexm@hsys.msk.ru> 1999-2000



                             21 декабÑÑ 1998                  TRUNCATE(2)