|
|
1.1 ! root 1: .\" Copyright (c) 1983 The Regents of the University of California. ! 2: .\" All rights reserved. ! 3: .\" ! 4: .\" Redistribution and use in source and binary forms are permitted provided ! 5: .\" that: (1) source distributions retain this entire copyright notice and ! 6: .\" comment, and (2) distributions including binaries display the following ! 7: .\" acknowledgement: ``This product includes software developed by the ! 8: .\" University of California, Berkeley and its contributors'' in the ! 9: .\" documentation or other materials provided with the distribution and in ! 10: .\" all advertising materials mentioning features or use of this software. ! 11: .\" Neither the name of the University nor the names of its contributors may ! 12: .\" be used to endorse or promote products derived from this software without ! 13: .\" specific prior written permission. ! 14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED ! 15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF ! 16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 17: .\" ! 18: .\" @(#)truncate.2 6.8 (Berkeley) 6/23/90 ! 19: .\" ! 20: .TH TRUNCATE 2 "June 23, 1990" ! 21: .UC 5 ! 22: .SH NAME ! 23: truncate \- truncate a file to a specified length ! 24: .SH SYNOPSIS ! 25: .nf ! 26: .ft B ! 27: truncate(path, length) ! 28: char *path; ! 29: off_t length; ! 30: .PP ! 31: .ft B ! 32: ftruncate(fd, length) ! 33: int fd; ! 34: off_t length; ! 35: .fi ! 36: .SH DESCRIPTION ! 37: .I Truncate ! 38: causes the file named by ! 39: .I path ! 40: or referenced by ! 41: .I fd ! 42: to be truncated to at most ! 43: .I length ! 44: bytes in size. If the file previously ! 45: was larger than this size, the extra data ! 46: is lost. ! 47: With ! 48: .IR ftruncate , ! 49: the file must be open for writing. ! 50: .SH "RETURN VALUES ! 51: A value of 0 is returned if the call succeeds. If the call ! 52: fails a \-1 is returned, and the global variable \fIerrno\fP ! 53: specifies the error. ! 54: .SH "ERRORS ! 55: .I Truncate ! 56: succeeds unless: ! 57: .TP 15 ! 58: [ENOTDIR] ! 59: A component of the path prefix is not a directory. ! 60: .TP 15 ! 61: [EINVAL] ! 62: The pathname contains a character with the high-order bit set. ! 63: .TP 15 ! 64: [ENAMETOOLONG] ! 65: A component of a pathname exceeded 255 characters, ! 66: or an entire path name exceeded 1023 characters. ! 67: .TP 15 ! 68: [ENOENT] ! 69: The named file does not exist. ! 70: .TP 15 ! 71: [EACCES] ! 72: Search permission is denied for a component of the path prefix. ! 73: .TP 15 ! 74: [EACCES] ! 75: The named file is not writable by the user. ! 76: .TP 15 ! 77: [ELOOP] ! 78: Too many symbolic links were encountered in translating the pathname. ! 79: .TP 15 ! 80: [EISDIR] ! 81: The named file is a directory. ! 82: .TP 15 ! 83: [EROFS] ! 84: The named file resides on a read-only file system. ! 85: .TP 15 ! 86: [ETXTBSY] ! 87: The file is a pure procedure (shared text) file that is being executed. ! 88: .TP 15 ! 89: [EIO] ! 90: An I/O error occurred updating the inode. ! 91: .TP 15 ! 92: [EFAULT] ! 93: .I Path ! 94: points outside the process's allocated address space. ! 95: .PP ! 96: .I Ftruncate ! 97: succeeds unless: ! 98: .TP 15 ! 99: [EBADF] ! 100: The ! 101: .I fd ! 102: is not a valid descriptor. ! 103: .TP 15 ! 104: [EINVAL] ! 105: The ! 106: .I fd ! 107: references a socket, not a file. ! 108: .TP 15 ! 109: [EINVAL] ! 110: The ! 111: .I fd ! 112: is not open for writing. ! 113: .SH "SEE ALSO" ! 114: open(2) ! 115: .SH BUGS ! 116: These calls should be generalized to allow ranges ! 117: of bytes in a file to be discarded.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.