Le 29 juin 2014 16:42, "Sven Van Caekenberghe" <s...@stfx.eu> a écrit : > > > On 29 Jun 2014, at 16:18, Denis Kudriashov <dionisi...@gmail.com> wrote: > > > It should be trivial with XStream > > I would love to see that code. > > We have Xtreams building happily > > https://ci.inria.fr/pharo-contribution/job/Xtreams/ > > it is waiting in the trenches, waiting to be used... >
Xtreams looks like a very powerful capability. Now how would one use it for this case? > > 2014-06-27 21:45 GMT+04:00 Sven Van Caekenberghe <s...@stfx.eu>: > > http://stackoverflow.com/questions/10164597/how-would-you-implement-tail-efficiently > > http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/tail.c > > > > I would work with the growing buffer read backwards. > > It would be great fun doing that in Pharo. > > > > On 27 Jun 2014, at 18:50, p...@highoctane.be wrote: > > > > > Thanks. > > > > > > But this would give me the 200 last chars. I am interested in the 200 last lines. > > > > > > Now, I did this: > > > > > > command := 'tac ', file fullName, ' | head -200'. > > > ^ (PipeableOSProcess command: command) output. > > > > > > which did the trick but isn't portable at all (Linux here). > > > > > > I had a look at RemoteString as well. > > > > > > Phil > > > > > > > > > On Fri, Jun 27, 2014 at 6:21 PM, Guillermo Polito < guillermopol...@gmail.com> wrote: > > > If you have a MultiByteFileStream you can do > > > > > > stream position: stream size - 200. > > > stream next: 200. > > > > > > Have a look at RemoteString, which is the class used to read the source from the source and changes files (without loading all of them into memory) > > > > > > > > > On Fri, Jun 27, 2014 at 6:15 PM, p...@highoctane.be < p...@highoctane.be> wrote: > > > I wonder how you guys would read the last n lines from a file in Pharo without reading through the whole thing. > > > > > > Is there code doing just that somewhere? > > > > > > The code I have is a shell script doing a 'tac file | tail -200 > /temp/something' > > > > > > I can always do that through OSProcess but wondered if there was something available. > > > > > > Reading through with a 200-entries FIFO circular buffer seems a bit silly to do. > > > > > > TIA > > > Phil > > > > > > > > > > > > > > > > > > > > >