Provided by: manpages-nl-dev_4.15.0-9_all bug

NAAM

       lseek - herplaats lees/schrijf bestand-positie

SAMENVATTING

       #include <unistd.h>

       off_t lseek(int bi, off_t positie, int vanaf);

BESCHRIJVING

       De  lseek()  functie  herplaatst  de  positie van de bestandindicator bi naar het argument
       positie volgens de aanwijzing vanaf als volgt:

       SEEK_SET
              De positie wordt naar positie bytes gezet.

       SEEK_CUR
              De positie wordt naar de huidige plaats plus positie bytes gezet.

       SEEK_END
              De positie wordt naar de lengte van het bestand plus positie bytes gezet.

       De lseek functie staat toe de bestand plaats te zetten ná het einde van het  bestand  (dit
       verandert  niet  de  grootte  van  het bestand). Als later gegevens op deze positie worden
       geschreven, geven navolgende lees opdrachten in  het  gat  ge-Nulde  ('\0')   bytes  terug
       (totdat er daadwerkelijk gegevens in het gat worden geschreven).

   Zoeken bestand data en gaten
       Vanaf versie 3.1 ondersteund Linux de volgende additionele waarden voor vanaf:

       SEEK_DATA
              Pas  de  bestandsplaats aan de volgende locatie in het bestand groter dan of gelijk
              aan positie die data bevat. Als positie naar data wijst, zet dan de  bestandsplaats
              op positie.

       SEEK_HOLE
              Pas de bestandsplaats aan naar het volgende gat in het bestand groter dan of gelijk
              aan positie. Als positie naar het midden van een gat wijst, dan  wordt  de   plaats
              gezet  op  positie  gezet.  Als er geen gat is voorbij positie, dan wordt de plaats
              gezet op het einde van het bestand (m.a.w. er is een impliciet gat  aan  het  einde
              van elk bestand).

       In  beide  bovenstaande  gevallen  faalt  lseek()  als  positie  voorbij het einde van het
       bestand wijst.

       Deze operaties staan applicaties toe om gaten in dun  toegekende  bestanden  in  kaart  te
       brengen.  Dit kan nuttig zijn voor applicaties zoals backup gereedschap, die ruimte kunnen
       sparen bij het aanmaken van backups en gaten kunnen bewaren, mits ze een mechanisme hebben
       om gaten de ontdekken.

       Binnen  de  doelen  van  deze  operaties  bedoelen we met een gat een serie van nullen die
       (normaliter) niet zijn toegekend in de onderliggende bestandsopslag. Het is echter zo  dat
       een  bestandssysteem  niet  verplicht  is gaten te rapporteren, daarom zijn deze operaties
       geen gegarandeerd mechanisme om de aan een bestand toegekende opslag ruimte  in  kaart  te
       brengen.  (Bovendien  hoeft  een  serie van nullen die daadwerkelijk is geschreven naar de
       onderliggende opslag  niet gerapporteerd te worden als een gat.) In  de  meest  eenvoudige
       implementatie  kan  een  bestandssysteem  de  operatie  ondersteunen  door  te  zorgen dat
       SEEK_HOLE altijd de afstand naar het einde van het bestand teruggeeft, en  te  zorgen  dat
       SEEK_DATA  altijd  positie teruggeeft (m.a.w. zelfs als de locatie aangewezen door positie
       een gat is, kan het beschouwd worden te bestaan uit data die een serie van nullen is).

       De _GNU_SOURCE  test macro moet zijn gedefinieerd om  de  definities  te  verkrijgen   van
       SEEK_DATA en SEEK_HOLE uit <unistd.h>.

       De SEEK_HOLE en SEEK_DATA operaties worden ondersteund door de volgende  bestandssystemen:

       *  Btrfs (sinds Linux 3.1)

       *  OCFS (sinds Linux 3.2)

       *  XFS (sinds Linux 3.5)

       *  ext4 (sinds Linux 3.8)

       *  tmpfs(5)  (sinds Linux 3.8)

       *  NFS (sinds Linux 3.18)

       *  FUSE (sinds Linux 4.5)

       *  GFS2 (sinds Linux 4.15)

EIND WAARDE

       Bij  geslaagde  afronding geeft lseek de opgeleverde plaats zoals gemeten in bytes van het
       begin van het bestand, terug. Anders wordt een  waarde  van  (off_t) -1  teruggegeven,  en
       errno wordt gezet om de fout duidelijk te maken.

FOUTEN

       EBADF  bi is niet een open bestandindicator..

       EINVAL Vanaf  is  niet  geldig.  Of:  de resulterende bestand plaats zou negatief zijn, of
              voorbij het einde van een doorzoekbaar apparaat.

       ENXIO  whence is SEEK_DATA of SEEK_HOLE, en positie is voorbij het einde van het  bestand,
              of whence is SEEK_DATA en positie is in een gat aan het einde van het bestand.

       EOVERFLOW
              De resulterende bestand plaats kan niet gerepresenteerd worden in een off_t.

       ESPIPE bi hoort bij een pijp, een socket, of een FIFO.

VOLDOET AAN

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.

       SEEK_DATA  en SEEK_HOLE zijn niet-standaard uitbreidingen ook aanwezig inSolaris, FreeBSD,
       en DragonFly BSD; zij zijn voorgesteld voor opname in de volgende POSIX revisie (Issue 8).

OPMERKINGEN

       Zie open(2) voor  een  discussie  over  de  relatie  tussen  bestandsbeschrijvingen,  open
       bestandsbeschrijvingen en bestanden.

       Als  de  O_APPEND  bestand  status  vlag is gezet op de open bestandsbeschrijving, dan zal
       write(2)  altijd  de  bestandsafstand  naar  het  einde  van  het   bestand   verplaatsen,
       onafhankelijk van het gebruik van lseek().

       Het   off_t  data  type  is  een  positief  of  negatief  geheel  getal  data  type  zoals
       gespecificeerd in POSIX.1.

       Sommige apparaten zijn niet in status tot zoeken, en POSIX bepaald nietwelke apparaten het
       moeten lseek() ondersteunen.

       Op Linux: het gebruik van lseek() zal op een terminal apparaat falen met de foutESPIPE.

ZIE OOK

       dup(2), fallocate(2), fork(2), open(2), fseek(3), lseek64(3), posix_fallocate(3)

COLOFON

       Deze   pagina  is  onderdeel  van  release  5.13  van  het  Linux  man-pages-project.  Een
       beschrijving van het project, informatie over het melden van bugs en  de  nieuwste  versie
       van deze pagina zijn op https://www.kernel.org/doc/man-pages/ te vinden.

VERTALING

       De   Nederlandse   vertaling   van  deze  handleiding  is  geschreven  door  Jos  Boersema
       <joshb@xs4all.nl>, Mario  Blättermann  <mario.blaettermann@gmail.com>  en  Luc  Castermans
       <luc.castermans@gmail.com>

       Deze  vertaling  is  vrije  documentatie;  lees  de  GNU  General Public License Version 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ of later over de Copyright-voorwaarden. Er  is
       geen AANSPRAKELIJKHEID.

       Indien  U  fouten  in  de vertaling van deze handleiding zou vinden, stuur een e-mail naar
       ⟨debian-l10n-dutch@lists.debian.org⟩.