终端中的长输入不会更改为新行

终端中的长输入不会更改为新行

当我输入像这样的长命令行时dddddddddddddddddddddddddddd,该命令将覆盖最后一行而不会更改为新行。

我首先使用SSH它来连接主机,然后docker exec -it 525d5808c4a9 bash连接docker容器。

这是PS1容器的变量。

root@525d5808c4a9:/home/mhtan/git/pytorch-pretrained-bert/examples# echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
dddddddddddddddddddhome/mhtan/git/pytorch-pretrained-bert/examples# dddddddddddd 

类似的问题是更改提示样式后,ubuntu 终端中没有新行,但这并不能解决我的问题。

有人可以帮忙吗?

答案1

Docker 中的终端大小为已知问题,并且建议的快速修复对我有用:

docker exec -e COLUMNS="`tput cols`" -e LINES="`tput lines`" -ti container bash

COLUMNS和变量LINES告诉 shell 和其他命令终端的大小。它们似乎在 docker 终端中未设置,因此您需要手动设置它们。

我认为您也可以使用$COLUMNS$LINES变量代替tput cols/ tput lines

docker exec -e COLUMNS="$COLUMNS" -e LINES="$LINES" -ti container bash

相关内容