栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用JSch从SSH服务器读取命令输出时获取不需要的字符

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用JSch从SSH服务器读取命令输出时获取不需要的字符

这些是ANSI转义码,通常由终端客户端解释以漂亮地[彩色]打印输出。

如果服务器配置正确,则只有在使用交互式终端时才能获得这些信息。换句话说,如果您为会话请求了伪终端(如果要使会话自动化,则不应该这样做)。

如果使用了“ shell”通道,那么JSch会自动请求伪终端,因为该通道应该用于实现交互式终端。

  • 如果自动执行远程命令,则最好使用“ exec”通道,如JSch

    Exec.java
    example所示。

  • 另外,您可以通过调用阻止JSch请求伪终端

    setPty
    。但是我不建议使用“ shell”通道。尽管无论出于何种原因您都需要致电
    setPty(false)
    ,但无论如何都应致电,因为这样可以避免许多其他类似的麻烦。实际上,我已经在上一个问题中向您建议了这一点。


其他说明:尽管我了解OP为什么使用

ls
命令,但通常来说,应该使用SFTP
API来检索目录列表
,而不是执行
ls
和解析其输出。解析
ls
输出是一种非常不可靠的方法。




转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/397541.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号