I am not sure what to search for. "Terminal lines overlap" mostly brings up posts where that is the desired behavior.
Let me demonstrate what I am experiencing over SSH to Raspberry Pi running dietpi. jq -h
is just an example.
dietpi@tv22-rpi1:~$ jq -h
jq - commandline JSON processor [version 1.5-1-a5b5cbe]
Usage: jq [options] <jq filter> [file...]
jq - commandline JSON processor [version 1.5-1-a5b5cbe]
Usage: jq [options] <jq filter> [file...]inputs, applying the
given filter to its JSON text inputs and producing the
jq is a tool for processing JSON inputs, applying the
given filter to its JSON text inputs and producing the,
filter's results as JSON on standard output.(except for
The simplest filter is ., which is the identity filter,
copying jq's input to its output unmodified (except forq")
formatting).://stedolan.github.io/jq
For more advanced filters see the jq(1) manpage ("man jq")
and/or https://stedolan.github.io/jq
-c compact instead of pretty-printed output;
jq - comSome of the options include:sion 1.5-1-a5b5cbe]value;
Usage: j -coptions] <jq compact instead of pretty-printed output;put;
-n use `null` as the single input value; output;filter to it;
-eis a tool forset the exit status code based on the output;filter to it;
-sen filter to read (slurp) all inputs into an array; apply filter to it;
-rter's resultsoutput raw strings, not JSON texts;
-R simplest filread raw strings, not JSON texts;ilter,
-Cying jq's inpcolorize JSON;n't colorize JSON);pt for
-Mmatting).tabsmonochrome (don't colorize JSON);
-Stabreuse tabssort keys of objects on output; ("man jq")
--tab ause tabs for indentation;o value <v>; <v>;
--arg a v a v fset variable $a to value <v>; <v>;y of JSON texts read from <f>;
--argjson a v fset variable $a to JSON value <v>;y of JSON texts read from <f>;
dietpi@t --slurpfile a ffor moreset variable $a to an array of JSON texts read from <f>;
dietpi@tSee the manpage for more options.
dietpi@tv22-rpi1:~$
Old lines don't get cleared or moved up as they should. Instead, new lines just interleave with the old line creating an unreadable "soup".
I wonder if tmux on dietpi is to blame. I did a quick check and couldn't reproduce the behavior without tmux yet.
dietpi@tv22-rpi1:~$ tmux -V
tmux 2.8
Many other posts revolve around these settings so I include them. They don't look problematic to me.
dietpi@tv22-rpi1:~$ shopt | grep checkwinsize
checkwinsize on
dietpi@tv22-rpi1:~$ echo $PS1
${debian_chroot:+($debian_chroot)}\u@\h:\w\$
Clarifying TERM variable, as suggested in the comments.
- Outermost TERM=xterm-256color (Linux laptop GNOME Terminal 3.18.3; note putty on Windows behaves similarly)
- TERM=screen in local tmux
- TERM=screen after connecting over ssh
- TERM=screen inside tmux over ssh
TERM
environment variables, in particular the one seen by thetmux
process itself and the one seen by programs using thetmux
-provided terminal. You need to show those, as well as tell potential answerers the type of the rendered-upon (outer) terminal. – JdeBP Oct 30 '20 at 08:22