Как добавить неразрывную строку в bash, начиная с конца моего левого текста PS1 и заканчивая правой стороной

У меня проблемы с обдумыванием этой маленькой проблемы

В основном я использую этот bash PS1 script, потому что это довольно круто:

PS1="\n \[\033[0;34m\]╭─────\[\033[0;31m\]\[\033[0;37m\]\[\033[41m\] \u \[\033[0m\]\[\033[0;31m\]\[\033[0;34m\]─────\[\033[0;32m\]\[\033[0;30m\]\[\033[42m\] \w \[\033[0m\]\[\033[0;32m\] \n \[\033[0;34m\]╰ \[\033[1;36m\]\$ \[\033[0m\]"

выглядит так:

bash like powerline

Что я хочу сделать, так это напечатать отметку времени справа со сплошной линией, соединяющей конец левой стороны с началом правой стороны текст, например:

ben @ local ------------------------------------------12:00pm

Я пытался сделать это:

$(printf '%*s' $COLUMNS  '-')

, но это, очевидно, просто создает целую новую строку, заполненную тире

Как мне получить значение того места, на котором остановился курсор, я вижу tput sc, но я не понимаю, как использовать это в переменной? Затем напечатайте строки, оставив, может быть, 5 символов справа на время.

Это мой первый опыт написания сценариев bash, поэтому простите мое невежество

Любая помощь приветствуется

5
задан 20 November 2021 в 03:28

0 ответов

Другие вопросы по тегам:

Похожие вопросы: