in reply to Seeking in a file

seek changes the position by bytes, not lines. You can remember the position of the previous line (see tell and then seek to $position, 0).

Replies are listed 'Best First'.
Re^2: Seeking in a file
by spazm (Monk) on Jun 02, 2012 at 00:25 UTC
    Is seeking backwards in a piped stream going to work (reliably)?

    This seems like a basic map-reduce paradigm. It would be nice to have a method that would "just work(tm)" for pre sorted data like this.

    Something like an iterator over the group of file handles that stores a one line buffer. Hadoop::Streaming::Reducer::Input does something like this for a single filehandle, but its terrible clumsy code (sorry 'bout that).

    Hadoop::Streaming::Reducer::Input source.

      I fear seeking does not work in a piped stream at all. You have to remember tha last line so you can return to it later.