Я в настоящее время решал протестировать свои двойные мониторы в вертикальной конфигурации, и я столкнулся с проблемой, которую я никогда не имел прежде: входная строка на моем терминале слишком далеко снижается на экран!
Я задавался вопросом, существует ли способ сделать выходную прокрутку вниз, так, чтобы входная строка осталась наверху.
например, нормальное терминальное представление похоже на это:
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=46 time=28.3 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=46 time=13.7 ms
64 bytes from 8.8.8.8: icmp_req=3 ttl=46 time=19.1 ms
64 bytes from 8.8.8.8: icmp_req=4 ttl=45 time=20.8 ms
64 bytes from 8.8.8.8: icmp_req=5 ttl=45 time=15.6 ms
64 bytes from 8.8.8.8: icmp_req=6 ttl=46 time=15.3 ms
64 bytes from 8.8.8.8: icmp_req=7 ttl=46 time=15.3 ms
64 bytes from 8.8.8.8: icmp_req=8 ttl=45 time=14.3 ms
64 bytes from 8.8.8.8: icmp_req=9 ttl=45 time=14.3 ms
64 bytes from 8.8.8.8: icmp_req=10 ttl=45 time=15.5 ms
64 bytes from 8.8.8.8: icmp_req=11 ttl=45 time=16.9 ms
64 bytes from 8.8.8.8: icmp_req=12 ttl=45 time=16.3 ms
64 bytes from 8.8.8.8: icmp_req=13 ttl=45 time=20.0 ms
^C
--- 8.8.8.8 ping statistics ---
13 packets transmitted, 13 received, 0% packet loss, time 12017ms
rtt min/avg/max/mdev = 13.773/17.391/28.343/3.812 ms
me@my_computer:~$
и вместо этого я хотел бы иметь что-то вроде этого:
me@my_computer:~$
rtt min/avg/max/mdev = 13.773/17.391/28.343/3.812 ms
13 packets transmitted, 13 received, 0% packet loss, time 12017ms
--- 8.8.8.8 ping statistics ---
^C
64 bytes from 8.8.8.8: icmp_req=13 ttl=45 time=20.0 ms
64 bytes from 8.8.8.8: icmp_req=12 ttl=45 time=16.3 ms
64 bytes from 8.8.8.8: icmp_req=11 ttl=45 time=16.9 ms
64 bytes from 8.8.8.8: icmp_req=10 ttl=45 time=15.5 ms
64 bytes from 8.8.8.8: icmp_req=9 ttl=45 time=14.3 ms
64 bytes from 8.8.8.8: icmp_req=8 ttl=45 time=14.3 ms
64 bytes from 8.8.8.8: icmp_req=7 ttl=46 time=15.3 ms
64 bytes from 8.8.8.8: icmp_req=6 ttl=46 time=15.3 ms
64 bytes from 8.8.8.8: icmp_req=5 ttl=45 time=15.6 ms
64 bytes from 8.8.8.8: icmp_req=4 ttl=45 time=20.8 ms
64 bytes from 8.8.8.8: icmp_req=3 ttl=46 time=19.1 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=46 time=13.7 ms
64 bytes from 8.8.8.8: icmp_req=1 ttl=46 time=28.3 ms
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
Я не мог найти никакую подобную документацию или вопрос на форумах. Если у кого-либо есть идея, сообщите мне! (также, если Вы думаете, что это не возможно),
Спасибо!
PS: я использую Ubuntu 12.04
Я нашел один хороший совет, с которого можно начать. Вы должны поиграть с bash:
Чтобы настроить:
$ bash # попробуйте это в подоболочке, поскольку ^ C, кажется, заставляет его выйти $ f () {sed "1s / ^ / $ (tput cup 0 0) /; s / ^ / $ (tput il1) /"; } $ PROMPT_COMMAND = 'tput чашка 0 0; tput il1; эхо ' $ exec>> (е)
Нажмите Enter еще раз, и можно попробовать. Иногда на выходе и подсказка не в порядке и могут быть другие странности, но это довольно интересная штука.
Источник: Перевернутое окно терминала / командной строки .
См. также:
После поиска этого хорошего вопроса я нашел эти команды и надеюсь, что они могут вам помочь, так что они могут помочь вам сосредоточиться на верхней части терминала при написании команды.
В терминале попробуйте:
f () { sed "1s/^/$(tput cup 0 0)/;s/^/$(tput il1)/"; }
PROMPT_COMMAND='tput cup 0 0;tput il1; echo'
exec > >(f)
Ссылка Сайт
Еще один трюк - передать вывод вашей команды через tac
, который похож на cat
, но печатает в обратном порядке:
terdon@oregano ~ $ ping -c 5 8.8.8.8 | tac
rtt min/avg/max/mdev = 88.906/91.678/94.948/2.129 ms
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
--- 8.8.8.8 ping statistics ---
64 bytes from 8.8.8.8: icmp_seq=5 ttl=42 time=88.9 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=42 time=92.8 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=42 time=90.0 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=42 time=91.5 ms
64 bytes from 8.8.8.8: icmp_seq=1 ttl=42 time=94.9 ms
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
Обратите внимание, что у меня чтобы указать максимальное число ping ( -c 5
), потому что в противном случае команда ping
не завершится, и канал разорвется. В любом случае, tac
очень полезен для такого рода вещей.