我如何在ssh-disconnect之后终止bash会话以保留命令历史记录?

时间:2019-06-26 17:40:09

标签: bash history tty

当ssh由于连接问题而断开连接后重新连接到服务器时,我希望能够告诉我的旧bash会话终止并保存其命令历史记录。

我想象会有一种方法可以“写入”丢失的shell的tty输入缓冲区,或者发出发送bash的信号。

1 个答案:

答案 0 :(得分:1)

修改了ttyecho对我不起作用之后,我从联机帮助页中意识到,可以通过简单的SIGHUP信号轻松实现干净退出,甚至不需要root用户(如果同一用户):

$ kill -HUP 11597

将导致“挂断”打印在“丢失的”外壳中(以防您测试并可以访问它),并保存丢失的外壳中的历史记录。

附加:

$ history -a; history -r

然后(1)确保不覆盖刚由我们的新Shell编写的历史记录,并且(2)立即将旧Shell的历史记录提供给新Shell。