1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
'\" t
.\" Copyright (c) 1980, 1991 Regents of the University of California.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\" must display the following acknowledgement:
.\" This product includes software developed by the University of
.\" California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)lseek.2 6.5 (Berkeley) 3/10/91
.\"
.\" Modified Fri Jul 23 22:17:00 1993 by Rik Faith <faith@cs.unc.edu>
.\" Modified 10 June 1995 by Andries Brouwer <aeb@cwi.nl>
.\" Modified Thu Oct 31 15:18:33 1996 by Eric S. Raymond <esr@thyrsus.com>
.\" Modified Sat Jan 17 13:00:32 MET 1998 by Michael Haardt <michael@cantor.informatik.rwth-aachen.de>
.\" Translation revised May 3 1998 by Juan Piernas <piernas@dif.um.es>
.\" Translation revised Tue Aug 18 1998 by Juan Piernas <piernas@ditec.um.es>
.\"
.TH LSEEK 2 "17 Enero 1998" "Linux" "Manual del Programador de Linux"
.SH NOMBRE
lseek \- reposiciona el puntero de lectura/escritura de un fichero
.SH SINOPSIS
.B #include <sys/types.h>
.br
.B #include <unistd.h>
.sp
.BI "off_t lseek(int " fildes ", off_t " offset ", int " whence );
.SH DESCRIPCIN
La funcin
.B lseek
reposiciona el puntero del descriptor de fichero
.I fildes
con el argumento
.I offset
de acuerdo con la directiva
.I whence
as follows:
.IP \fBSEEK_SET\fP
El puntero se coloca a
.I offset
bytes.
.IP \fBSEEK_CUR\fP
El nmero de bytes indicado en
.I offset
se suma a la direccin actual y el puntero se coloca en la direccin
resultante.
.IP \fBSEEK_END\fP
El puntero se coloca al final del fichero ms
.I offset
bytes.
.PP
La funcin
.B lseek
permite colocar el puntero de fichero despus del final de fichero.
Si despus se escriben datos en este punto, las lecturas siguientes de datos
dentro del hueco que se forma devuelven ceros (hasta que realmente se
escriban datos dentro de ese hueco).
.SH "VALOR DEVUELTO"
En el caso de una ejecucin correcta,
.B lseek
devuelve la posicin del puntero resultante medida en bytes desde el principio
del fichero. Si se produce un error, se devuelve el valor (off_t)\-1 y en
.I errno
se coloca el tipo de error.
.SH ERRORES
.TP
.B EBADF
.I fildes
no es un descriptor de fichero abierto.
.TP
.B ESPIPE
.I fildes
est asociado a una tubera, socket, o FIFO.
.TP
.B EINVAL
.I whence
no es un valor adecuado.
.SH "CONFORME A"
SVr4, POSIX, BSD 4.3
.SH RESTRICCIONES
Algunos dispositivos son incapaces de buscar y POSIX no especifica qu
dispositivos deben soportar la bsqueda.
Restricciones especficas de Linux: el uso de \fBlseek\fP sobre un
dispositivo tty (terminal) devuelve \fBESPIPE\fP. Otros sistemas devuelven
el nmero de caracteres escritos, usando SEEK_SET para establecer el
contador. Algunos dispositivos, como por ejemplo \fB/dev/null\fP, no
provocan el error \fBESPIPE\fP, pero devuelven un puntero cuyo valor es
indefinido.
.SH NOTAS
La utilizacin de
.I whence
en este documento es incorrecta en ingls, pero se usa por
motivos histricos.
Cuando convierta cdigo antiguo, sustituya los valores para \fIwhence\fP con
las siguientes macros:
.PP
.TS
c c
l l.
antiguo nuevo
0 SEEK_SET
1 SEEK_CUR
2 SEEK_END
L_SET SEEK_SET
L_INCR SEEK_CUR
L_XTND SEEK_END
.TE
.PP
SVR1-3 devuelve \fBlong\fP en lugar de \fBoff_t\fP, BSD devuelve \fBint\fP.
.SH "VASE TAMBIN"
.BR dup "(2), " open "(2), " fseek (3)
|