Я пытаюсь использовать tmux и простые bash-скрипты для получения очень простой строки состояния в моих терминалах - поэтому окна очень маленькие (1 или 2 строки по высоте и, возможно, менее 10 символов по ширине).
Команда, вызывающая странное поведение:
echo "$(top -bn 1 | awk '/^%Cpu/{print $2}')%"
, которая, как правило, просто должна распечатать что-то вроде 1.8%
.В терминале обычного размера (с tmux или без него) он работает нормально, но когда я сжимаю терминал, в какой-то момент он начинает обрезать номер и отображает только %
.Это может показаться не слишком странным, но когда я добавляю некоторый текст вокруг этой команды, например
echo "ab$(top -bn 1 | awk '/^%Cpu/{print $2}'cd"
, я получаю abcd
в качестве вывода при сжатии терминала.Таким образом, это влияет только на часть с $(...)
, которая обрезается.
Также, когда я печатаю две строки:
echo "$(top -bn 1 | awk '/^%Cpu/{print $2}'%"
echo "20.5%"
, она напечатает 20.5%
в порядке, даже разбив ее на частинесколько строк, таких как
2
0
.
5
%
, а не просто не печатать его части.Однако в первой строке отображается только %
без каких-либо цифр.
Есть идеи, что вызвало это и как заставить отображаться цифры?