[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 Установка заданной длины файла

Функция truncate(3C) используется для установки заданной длины у
файла. truncate(3C) требует, чтобы пользователь с эффективным
пользовательским идентификатором процесса имел право на запись в
данный файл. ftruncate(3C) требует, чтобы файл был открыт на запись.
Аргументы truncate(3C) и ftruncate(3C):
path Путевое имя файла.
fildes    Дескриптор файла, открытого на запись.
length    Если файл был длиннее чем length, байты за length станут
недоступны. Если файл был короче чем length, размер файла будет
установлен равным length. В этом случае, байты между старым и новым
концами файла будут считываться как нули.
                    УСТАНОВКА ЗАДАННОЙ ДЛИНЫ ФАЙЛА
truncate(3C)

ИМЯ

      truncate, ftruncate - установить заданную длину файла

ИСПОЛЬЗОВАНИЕ

      #include <unistd.h>

      int truncate(char *path, off_t length);

      int ftruncate(int fildes, off_t length);

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

      успех - 0

      неуспех - -1 и errno установлена
               Установка заданной длины файла - Пример

Эта программа демонстрирует использование truncate(3C). Она работает
следующим образом:
7-10 Проверяет имя файла, введенное в командной строке.
12-15     Устанавливает нулевую длину файла.
Файл: truncate.c
               УСТАНОВКА ЗАДАННОЙ ДЛИНЫ ФАЙЛА - ПРИМЕР

 1 #include <stdio.h>
 2 #include <unistd.h>
 3 #include <stdlib.h>
 4
 5 main(int argc, char *argv[])
 6 {
 7     if (argc < 2) {
 8         printf("Usage: %s file\n", argv[0]);
 9         exit(1);
10     }
11
12     if (truncate(argv[1], 0) == -1) {
13         perror(argv[0]);
14         exit(3);
15     }
16     exit(0);
17 }