The sequence below will write each line to row 2 of the screen.
If you can arrange the output of your commands to start with a prefix, you 
could parse the prefix from the parallel output to set the row and then replace 
the \033[2;1H sequence with \033[${row};1H
while read -r line ; do echo "\033[2;1H\033[2K$line" ; done

________________________________
From: parallel-bounces+williambader=hotmail....@gnu.org 
<parallel-bounces+williambader=hotmail....@gnu.org> on behalf of Glen Huang 
<hey...@gmail.com>
Sent: Friday, January 24, 2025 12:24 AM
To: parallel@gnu.org <parallel@gnu.org>
Subject: Possible to have fixed output positions for multiple commands

Is it possible to make parallel run multiple commands

$ parallel cmd ::: A B C

And display the output as

$ parallel cmd ::: A B C
A: <last line from cmd A>
B: <last line from cmd B>
C: <last line from cmd C>

Where the last line from each command output is always displayed
in-place in real time at the same position, overwriting the previous
line from the same command, and the name to identify each command is
configurable by the user?

I skimmed through the document, couldn't really find the answer.
Wonder if it's possible at all?

Reply via email to