1 .\" Copyright (c) 1983, 1991 The Regents of the University of California.
2 .\" All rights reserved.
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\" notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\" notice, this list of conditions and the following disclaimer in the
11 .\" documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\" must display the following acknowledgement:
14 .\" This product includes software developed by the University of
15 .\" California, Berkeley and its contributors.
16 .\" 4. Neither the name of the University nor the names of its contributors
17 .\" may be used to endorse or promote products derived from this software
18 .\" without specific prior written permission.
20 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32 .\" @(#)truncate.2 6.9 (Berkeley) 3/10/91
34 .\" Modified Sat Jul 24 12:46:33 1993 by Rik Faith (faith@cs.unc.edu)
35 .\" Modified Tue Oct 22 22:36:33 1996 by Eric S. Raymond <esr@thyrsus.com>
36 .\" Modified Mon Dec 21 13:37:05 1998 by Andries Brouwer (aeb@cwi.nl)
37 .\" Translated into German by Dennis Stampfer <kontakt@dstampfer.de>
39 .TH TRUNCATE 2 "8. September 2002" "" "Systemaufrufe"
41 truncate, ftruncate \- kürzt eine Datei auf eine bestimmte Länge
43 .B #include <unistd.h>
45 .BI "int truncate(const char *" path ", off_t " length );
47 .BI "int ftruncate(int " fd ", off_t " length );
53 bewirken, dass die reguläre Datei, die durch
57 angegeben ist, auf eine Größe von exakt
59 Bytes abgeschnitten wird.
61 Wenn die Datei vorher größer war, gehen überschüssige Daten verloren.
62 Wenn die Datei vorher kleiner war, wird sie vergrößert und die
63 zusätzlichen Bytes werden als Nullen gelesen.
65 Der Dateizeiger wird nicht verändert.
69 muss die Datei zum Schreiben geöffnet sein, für
71 muss die Datei schreibbar sein.
73 Bei Erfolg gibt die Funktion 0 zurück. Bei Fehlern wird \-1 zurückgegeben und
81 Ein Teil des Pfades kann nicht gelesen werden oder die Datei kann vom
82 Benutzer nicht beschrieben werden.
86 liegt außerhalb des Programmspeichers.
91 ist größer als die maximale Dateigröße. (XSI)
94 Während der Ausführung wurde ein Signal empfangen.
99 ist negativ oder größer als die maximale Dateigröße.
102 Ein I/O Fehler ist beim aktualisieren der Inode aufgetreten.
106 ist ein Verzeichnis, keine Datei.
109 Zu viele Symbolische Links wurden im Pfad gefunden.
112 Ein Teil des Pfades ist größer als 255 Zeichen oder der komplette Pfad
113 überschreitet eine Größe von 1023 Zeichen.
116 Die angegebene Datei existiert nicht.
119 Ein Teil des Pfades ist kein Verzeichnis.
122 Die Datei befindet sich in einem read-only Dateisystem.
125 Die Datei ist eine Prozedur, die ausgeführt wird.
129 gelten die gleichen Fehlermeldungen. Anstelle von Dingen, die mit
131 schieflaufen können, gibt es jetzt Dinge, die mit
137 ist kein gültiger Dateideskriptor.
139 .BR EINVAL " oder " EBADF
141 ist nicht zum Schreiben geöffnet.
145 referenziert einen Socket, nicht eine Datei.
147 4.4BSD, SVr4 (diese Funktionsaufrufe traten zuerst in BSD 4.2 auf).
148 POSIX 1003.1-1996 beschreibt
150 POSIX 1003.1-2001 beschreibt ebenfalls
152 als eine XSI-Erweiterung.
154 SVr4 beschreibt zusätzlich die Fehler EMFILE, EMULTIHP, ENFILE und
157 SVr4 dokumentiert für
159 den zusätzlichen Fehler EAGAIN.
161 Die Beschreibung oben ist für XSI-kompatible Systeme gedacht. Für
162 nicht-XSI-kompatible Systeme erlaubt der POSIX-Standard zwei Verhalten von
166 größer ist als die Dateilänge
169 ist für eine derartige Umgebung nicht spezifiziert):
170 entweder wird ein Fehler zurückgeliefert oder die Datei wird vergrößert.
171 (Die meisten Unixe folgen den XSI-Anforderungen.)
172 .\" At the very least: OSF/1, Solaris 7, and FreeBSD conform, mtk, Jan 2002