记一次从windows连接远程Linux系统来控制设备采集数据方法

文章目录


0 引入

最近使用的探测器是老外的,老外的探测器需要在centos系统上,在这系统上有相应的指令或者软件控制,但是我们的软件在windwons上,所以目前的困难是:如何在Windows上软件加上该控制器模块???。


1、方法

  • 读了对方提供的文档,发现他们的控制软件底层都是使用了一些指令,这些是在文档中体现,只不过老外没有提供这些,后期我们交流之后询问能不能不适用这些软件,直接通过底层API函数来通信,对方也给了积极的肯定和相应的操作。
  • 1、首先在远程的centos系统上调试好设备弄了好久了,还是让老外远程搞好的,正好问了他一些问题,包括我们猜测可以用的方法,都在他那里得到的答复;
  • 2、用了本地的windowns系统通过power shell远程试了一下,也是没有问题的。 这两本就决定了我们这么调用是没有问题的,
  • 3、在Qt中使用Process调用控制台来发指令。

2、优化

  • 优化的地方就是每次都需要连接远程服务器,我们可以用公钥发送到服务端,避免每次连接,方法可以参考引用的文档。
  • 这里还有个问题就是探测器采集的数据是保存在本地的文件中,而我们需要实时去解析该文件,当初理想的方法的是可以用指令将数据直接接收的,但是可能不是太好用,而且跨系统读取文件对于实时性有影响,这个后续测试。

Process使用

Qt使用控制端发送指令(示例):

c 复制代码
    // 建立 SSH 连接并获取文件列表
    QString command = QString("ssh %1@%2 \"ls -R /home/ubuntu\"").arg(account).arg(ip);
    QProcess *process = new QProcess(this);
    process->start(command);
    if (!process->waitForFinished()) {
        QString errorOutput = process->readAllStandardError();
        QMessageBox::warning(this, "错误", "SSH 连接失败。\n错误信息: " + errorOutput);
        return;

3、引用

1、QT项目实战------连接远程服务器并获取文件在treeView展现

2、Qt QSsh 使用 windows Qt实现ssh客户端


相关推荐
Yana.nice5 小时前
Linux 只保留 30 天内日志(find命令删除日志文件)
linux·运维·chrome
2601_960567967 小时前
电商套图自动化效率的工程量化分析——从逐张生成到批量套图的架构演进
运维·架构·自动化
吳所畏惧8 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
DFT计算杂谈8 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
HiDev_9 小时前
【非标自动化】2、认识元器件(确定目标)
运维·自动化
Zhang~Ling9 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind9 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的森10 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
中微极客10 小时前
2026主流AI Agent框架技术选型与性能对比
运维·网络·人工智能
久曲健的测试窝10 小时前
智能座舱自动化测试落地方案:数字仿真搭配实车实测,解决用例运维与场景失真难题
运维