You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python升级交互式反向Shell执行fg恢复后按回车显示^M无法操作怎么办?

问题原因

  1. 单独执行stty raw -echo后,本地终端会关闭回车符自动转换映射,普通回车(\r)无法被识别为命令结束符,只会输出^M字符
  2. 切回反弹shell后未执行终端重置操作,导致目标和本地终端的参数不匹配

正确操作流程

  • 拿到初始反弹shell后,首先执行:
    python3 -c 'import pty; pty.spawn("/bin/bash")'
    
  • 按下Ctrl+Z将nc监听进程挂入后台
  • 本地终端直接执行整行命令,不要拆分执行:
    stty raw -echo; fg
    
  • 切回反弹shell后,用Ctrl+J代替普通回车,输入reset后按Ctrl+J执行重置
  • 依次配置终端环境变量即可获得全功能交互式shell:
    export TERM=xterm
    export SHELL=/bin/bash
    # 本地终端执行stty size可获得当前终端的行数和列数,替换下方参数
    stty rows 24 columns 80
    

异常状态恢复

如果已经处于按回车输出^M的异常状态,直接按Ctrl+J,输入reset后再次按Ctrl+J执行,即可恢复正常输入输出。


内容的提问来源于stack exchange,提问作者laurie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 15:54:04