Autossh结合GNU Screen连接Ubuntu服务器时清除终端输出历史的问题求助
Autossh结合GNU Screen连接Ubuntu服务器时清除终端输出历史的问题求助
我在自己的Ubuntu服务器上用autossh和screen,因为网络不太稳定,靠这俩工具能在断网后也保持连接不中断。最开始用screen当ssh终端的时候遇到不少问题,比如滚动异常(我是用Kali NetHunter在手机上连服务器),不过这个问题已经解决了,现在能正常滚动了。
平时我习惯用普通SSH连服务器,用着也顺手。就像这样连接的时候:
截图:通过SSH登录Ubuntu服务器
可以看到,SSH不会清除之前的输出历史,连接后那些历史还保留着。
但当我用下面这条autossh+screen的命令连接时:
AUTOSSH_GATETIME=5 autossh -M 0 -- -o "ServerAliveInterval 0" -o "ServerAliveCountMax 1" -R 2202:localhost:22 -L 8080:localhost:80 -t root@192.168.100.1 -p 8288 $'bash -c 'exec screen -RD''
截图:同时运行autossh和screen命令
成功连接服务器后,screen会把已有的输出历史全部清除,命令提示符直接跑到终端顶部,就像这样:
截图:所有历史被screen清除,命令提示符移到顶部
我不想用autossh+screen时出现这种情况,希望它能和普通SSH一样——不要让screen覆盖终端内容,也不要乱动命令提示符,保持和基础SSH一样的表现。
有没有大佬能给个解决方案?万分感谢!
备注:内容来源于stack exchange,提问作者TuanHaxor




