sysseek FILEHANDLE,POSITION,WHENCE
Nustato FILEHANDLE sisteminę poziciją baitais, naudojant sisteminį kreipinį lseek(2). FILEHANDLE gali būti išsireiškimas, kurio reikšmė duoda filehandle'o pavadinimą. WHENCE reikšmės yra 0 nustatant naują poziciją į POSITION, 1 nustatant poziciją į dabartinė plius POSITION ir 2 nustatant jį į EOF plius POSITION (dažniausiai neigiama).
Pažymėtina, jog tai yra baitais: net jei filehandle'as buvo nustatyta dirbi su simboliais (pvz. naudojant
:utf8 I/O layer), tell() gražins baitų, ne simbolių postūmį (nes įgyvendinant pastarąjį variantą, sysseek() veikimas taptų labai lėtas).
sysseek() apiena normalų užbuferintą IO, taigi sumaišydamas jį su kitais nuskaitymais, kitais nei sysread, pvz. >< ar read()) print, write, seek, tell, ar eof gali įvesti painiavą.
Aprašant WHENCE galima naudoti konstantas SEEK_SET ,
SEEK_CUR ir SEEK_END
(failo pradžia, dabartinė pozicija, failo pabaiga) iš Fcntl modulio. Konstantų panaudojimas taip pat labiau pasiduoda pernešimui (portable) nei pasitikėjimas 0, 1 ir č. Pvz. "systell funkcijos aprašymui:
use Fcntl 'SEEK_CUR';
sub systell { sysseek($_[0], 0, SEEK_CUR) }
Gražina naują poziciją arna nesėkmės atveju neapibrėžtą reikšmę. Nulinė pozicija gražinama kaip string'as "0 but true" ; tad sysseek gražina true sėkmės atveju ir false - nesėkmės, bet vis dar įmanoma lengvai nustatyti naują poziciją.