当前位置: 技术问答>linux和unix
linux中怎么切换一个登陆终端到另外一个终端?
来源: 互联网 发布时间:2017-05-22
本文导语: 情景描述: 现在我在使用secureCRT ssh登陆服务器,当我用ssh登陆的时候,linux就为打开了一个终端。 有一次我重启了电脑,然后发现我的程序还在服务器上运行着。 (吓我一跳,脑残重启了,我还以为进入 【会话结...
情景描述:
现在我在使用secureCRT ssh登陆服务器,当我用ssh登陆的时候,linux就为打开了一个终端。
有一次我重启了电脑,然后发现我的程序还在服务器上运行着。
(吓我一跳,脑残重启了,我还以为进入 【会话结束,进程组结束,进程结束】这个流程了呢,没想到程序还在继续运行,首先问个,为什么呀?)
然后我发现这个程序使用的终端是pts/4
当我重新用ssh登陆的时候,很明显linux为我分配了,新的终端。
现在的问题是,我的程序在那个终端里运行,并且打印信息, 我实在需要看到这些打印信息,我该怎么办?
我怎么把自己的终端变成我想要的那个终端?
现在我在使用secureCRT ssh登陆服务器,当我用ssh登陆的时候,linux就为打开了一个终端。
有一次我重启了电脑,然后发现我的程序还在服务器上运行着。
(吓我一跳,脑残重启了,我还以为进入 【会话结束,进程组结束,进程结束】这个流程了呢,没想到程序还在继续运行,首先问个,为什么呀?)
然后我发现这个程序使用的终端是pts/4
当我重新用ssh登陆的时候,很明显linux为我分配了,新的终端。
现在的问题是,我的程序在那个终端里运行,并且打印信息, 我实在需要看到这些打印信息,我该怎么办?
我怎么把自己的终端变成我想要的那个终端?
|
对于突然中断的SSH会话,Linux系统一般都会保留一段时间,之后会自动删除。你再重新登录的话会被分配一个新的tty。
你想要恢复到之前那个中断的会话,可以做到,但是很难。类似的问题还可以是,比如我有个进程挂在后台,stdout往控制台里打印信息, 我想看stdout怎么办?我已经做过不少相关搜索和实验,没有成功获取到stdout的。但是据说有人成功了。
总结一下就是,如果你准备以后恢复这个session,还是老老实实地用screen吧,如果你想以后看stdout,还是老老实实地输出到文件里吧(或者同样用screen)。纠结于这种问题只会浪费时间。我认为一个优秀的程序完全不需要stdout,所有该有的信息必须可以全部在log中找到。
你想要恢复到之前那个中断的会话,可以做到,但是很难。类似的问题还可以是,比如我有个进程挂在后台,stdout往控制台里打印信息, 我想看stdout怎么办?我已经做过不少相关搜索和实验,没有成功获取到stdout的。但是据说有人成功了。
总结一下就是,如果你准备以后恢复这个session,还是老老实实地用screen吧,如果你想以后看stdout,还是老老实实地输出到文件里吧(或者同样用screen)。纠结于这种问题只会浪费时间。我认为一个优秀的程序完全不需要stdout,所有该有的信息必须可以全部在log中找到。
|
可能是因为设置了某个参数所以短暂的掉线没有使session结束。不过还是推荐楼主使用screen,即使长时间掉线依然可以保证session alive。
|