V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
gesse
V2EX  ›  程序员

请教一个关于 docker 的问题

  •  
  •   gesse · 2018-10-24 16:46:31 +08:00 · 1513 次点击
    这是一个创建于 2241 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我 exec 进入容器(得到的虚拟终端是 pts/1 ),运行了一个 python 命令,然后不小心把控制台终端关闭了

    我再打开一个控制台终端 exec 进入容器,得到的是另外一个虚拟终端 pts/2,如果我想再进入 pts/1 进行后续操作,用什么命令?
    8 条回复    2018-10-25 17:01:49 +08:00
    xiaoxinshiwo
        1
    xiaoxinshiwo  
       2018-10-24 17:41:42 +08:00
    xiaoxinshiwo
        2
    xiaoxinshiwo  
       2018-10-24 17:42:00 +08:00
    我跟你的咋不一样
    guader
        3
    guader  
       2018-10-24 17:46:25 +08:00
    docker attach ?
    alixali
        4
    alixali  
       2018-10-24 17:51:57 +08:00
    可以先看一下之前的容器还在不在,找一下容器 id,然后用楼上的命令。
    gesse
        5
    gesse  
    OP
       2018-10-25 10:33:44 +08:00
    @xiaoxinshiwo
    运行 /bin/bash 然后再 ps aux
    gesse
        6
    gesse  
    OP
       2018-10-25 10:34:13 +08:00
    @guader
    @alixali

    attach 是进入 pts/0 虚拟终端
    guader
        7
    guader  
       2018-10-25 16:49:38 +08:00
    @gesse 哦哦,如果你是想要继续在 pts/1 的环境下操作的话,可以试试重定向 pts 设备的标准输入输出。
    或者用下面这个办法:
    先开一个 bash 进程
    docker exec -ti xxx bash
    然后
    script -f /dev/pts/1
    然后你就可以在当前 pts 比如 pts/2 下面向 pts/1 发送命令了并获取输出了。
    不知道是不是这个意思哈?
    guader
        8
    guader  
       2018-10-25 17:01:49 +08:00
    @gesse 哎呀抱歉,这样应该也不行,仅仅是把当前 pts 的标准输出重定向过去了而已
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   879 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 20:38 · PVG 04:38 · LAX 12:38 · JFK 15:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.