加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

运行分离的屏幕会话但在同一个bash中没有终止

发布时间:2020-12-15 18:35:32 所属栏目:安全 来源:网络整理
导读:这里已经有很多这样的问题了,但是每个人都推荐(以下的解决方案)以下解决方案: screen -dmS somename bash -c "/path/to/script; bash -l" 例如当脚本结束时,运行一个新的bash. 不幸的是,这对我不起作用,因为 该脚本使用$BASHPID变量 脚本运行永远运行,例如
这里已经有很多这样的问题了,但是每个人都推荐(以下的解决方案)以下解决方案:
screen -dmS somename bash -c "/path/to/script; bash -l"

例如当脚本结束时,运行一个新的bash.

不幸的是,这对我不起作用,因为

>该脚本使用$BASHPID变量
>脚本运行永远运行,例如需要用CTRL-C终止它
>并且终止后我必须拥有与运行脚本相同的shell(相同的$BASHPID)

所以,问题是:

>如何以分离模式启动屏幕(例如,在启动时) – 通常由-dm完成
>它必须启动shell

>最好,如果它可以作为“登录”shell启动,例如什么读取我的.profile,但这可以通过脚本本身的源?/ .profile来克服
>脚本启动一些其他(二进制)程序将运行到CTRL-C

>并且在脚本终止之后我必须获得相同的bash(使用相同的$BASHPID(因为需要运行另一个脚本,这取决于它)

总之需要模拟以下互动工作:

>开始屏幕
> echo $BASHPID
>在屏幕内运行一些命令(最后一个命令运行直到CTRL-C) – 例如运行/ path / to / script
>分离(ctrl-a d)

经过上述,以后,我可以做到

>重新连接(屏幕-ARR)
> CTRL-C
>并且可以继续…同样的
> echo $BASHPID #will产生与上面相同的内容

任何的想法? (考虑-X但它不起作用,某处我可能犯了错误)

看起来
the answer here
是给你的用例.简而言之:
bash --init-file <(echo "yourcommand")

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读