Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: less with subprocess

On Thu, Sep 30, 2021 at 10:59:25PM +0200, Pier Paolo Grassi wrote:
> writing on disk it can eat away all the space I have on my device and make
> other processes that need that disk space to fail. Even if disk is cheap
> doesn't mean it's always plentifully available

If you don't want to consume disk space you could use a
ramdisk/tmpfs for the temporary files.  Less will gobble up memory
anyway if it gets tons of input, unless you give it the -b or -B

On the other hand I wonder what kind of command would generate an
awful lot of output quickly which can still be overlooked manually
in less.  I mean, if you're only interested in the first N lines
or M bytes, you can pipe the command's output through "head -n N"
or "head -c M".

  cat /dev/zero | head -c 1000000 LF

(With the global alias from an earlier message.)


So, what you really want is to put the producing command to sleep
while less is in "view" mode and wake it up when going to "follow"
mode?  That somehow contradicts your initial request:

>> I use it like this so I am able to use ctrl-c and +F inside less to move
>> around in the output already received ...
>> ... and receive the new input received in the meantime (with +F)
           ^^^^^^^     ^^^^^^^^^          ^^^^^^^^^^^^^^^


If you *don't* want to put the producing process to sleep, it
sounds a bit like "the command shall keep running and buffer the
output in a magical bag of holding while less is in 'view' mode".


If you don't want the output on disk, the only options I see are

 * either do not generate new data in the meantime
 * or store it somewhere else (memory/ramdisk, other medium)


Dominik ^_^  ^_^


Dominik Vogt

Messages sorted by: Reverse Date, Date, Thread, Author