首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在exec_command之后获得退出代码?

在执行exec_command命令后,可以通过调用返回的SSHClient对象的方法来获取退出代码。具体步骤如下:

  1. 首先,建立SSH连接并执行exec_command命令,例如使用paramiko库实现SSH连接:
代码语言:txt
复制
import paramiko

# 建立SSH连接
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname, port, username, password)

# 执行exec_command命令
stdin, stdout, stderr = ssh.exec_command('your_command')
  1. 接下来,可以通过调用SSHClient对象的方法来获取退出代码。在paramiko库中,可以通过调用recv_exit_status()方法来获取退出代码:
代码语言:txt
复制
# 获取退出代码
exit_code = stdout.channel.recv_exit_status()
  1. 最后,可以根据退出代码来判断命令执行的结果。通常,退出代码为0表示命令执行成功,非零值表示命令执行失败或出现错误。

这样,你就可以在exec_command之后获得退出代码了。

注意:以上示例中使用的是paramiko库来实现SSH连接和执行命令,你也可以使用其他类似的库或工具来实现相同的功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

19.4 Boost Asio 远程命令执行

通用接口,在服务端中我们通过封装实现一个run_command函数,该函数用于发送一个字符串命令,并循环等待接收客户端返回的字符串,当接收到结束标志goodbye lyshark时则说明数据传输完成则退出...,客户端使用exec_command函数,该函数通过_popen函数执行一条命令,并循环fgets读取字符串发送给服务端,最终传输一个结束标志完成通信。...服务端代码如下所示,我们通过调用run_command函数执行dir C:\\Users\\命令,获取到对端主机目录下的文件列表。...<< std::endl; run_command(&socket, "dir C:\\Users\\"); std::system("pause"); return 0; } 客户端代码如下所示...(&socket); std::system("pause"); return 0; } 读者可自行运行上述代码,至此则可输出如下图所示的效果;

18660

19.4 Boost Asio 远程命令执行

通用接口,在服务端中我们通过封装实现一个run_command函数,该函数用于发送一个字符串命令,并循环等待接收客户端返回的字符串,当接收到结束标志goodbye lyshark时则说明数据传输完成则退出...,客户端使用exec_command函数,该函数通过_popen函数执行一条命令,并循环fgets读取字符串发送给服务端,最终传输一个结束标志完成通信。...服务端代码如下所示,我们通过调用run_command函数执行dir C:\\Users\\命令,获取到对端主机目录下的文件列表。...address() << std::endl; run_command(&socket, "dir C:\\Users\\"); std::system("pause"); return 0;}客户端代码如下所示...(&socket); std::system("pause"); return 0;}读者可自行运行上述代码,至此则可输出如下图所示的效果;

22330
  • 在Ubuntu20.04以Docker方式安装Mysql详细教程(支持外部连接,数据映射到物理磁盘,备份数据,导出数据,恢复数据)

    给my.cnf 设置权限 sudo chmod 644 /opt/mysql/conf.d/my.cnf 创建物理机存储mysql数据的映射目录 mkdir /opt/mysql/data 运行以下代码...测试数据库是否连接成功 DBeaver 下载地址: https://dbeaver.io/download/ image.png 图片 image.png 最后通过 control + p + q 退出...通过 control + p + q 退出容器; 导出数据备份 通过zhaoolee账户导出数据,shell编程的单双引号意义不同,双引号内的字符串会进行变量和命令替换,而单引号内的字符串则会被视为字面值...="exec mysqldump $DB_NAME -uzhaoolee -p'******'" docker exec mysql-container sh -c "$EXEC_COMMAND"...> "$OUTPUT_FILE" image.png 我们获得了名为 2023_08_12_11_36_56_wp_v2fy.sql 的数据备份文件,这个文件可以恢复到数据库。

    3.1K50

    dotnet 使用 Environment.FailFast 结束程序

    在运行到一些诡异的代码,这时的程序已经无法继续运行,需要退出,那么如何在记完日志之后退出程序记录更多信息?...可以通过 Environment.FailFast 里面添加字符串告诉用户当前的进程无法继续运行 在 dotnet 中有 Environment.FailFast 可以用来表示程序无法继续使用需要退出,...这个方法和 Exit 不一样的是可以传入字符串 判断因为林德熙逗比无法继续运行 if (str == "林德熙是逗比") {...Environment.FailFast(str); } 这时程序退出,可以在 Windows 日志里面的应用程序找到这个信息 ?...通过这个方法不仅可以记日志,还可以自动创建一个 DUMP 文件,至于这个 DUMP 放在哪里,请看win10 uwp 收集 DUMP 文件 同时这个方法调用的时候 finally 里面的代码是无法执行的

    67630

    知识库Wiki-DokuWiki

    /usr/local/apache56/conf/httpd.conf 端口默认80,设置端口为8090 3、启动服务 1、输入命令,启动apache服务 service httpd start 已启动...,之后点击此文件 文件链接自动带入过来 之后点击完成,页面创建完成(带附件) 10、扩展 10.1、脚本创建目录 由于每次在浏览器输入路径来创建目录会有些麻烦,则开发了创建目录的脚本 脚本代码:..._sftp.put(localpath, remotepath) # 执行命令 def exec_command(self, command): if self...." ****** 可输入的操作命令:cd、ls、mkdir、quit ****** 切换目录:cd 目录名 显示目录下文件:ls 创建目录:mkdir 目录名 退出操作...# print(my_command) # 如果输入quit elif "quit" == input_command[:4]: print("退出操作

    2.3K20

    软件测试|workbench语法提示如何设置为大写?

    图片如何在MySQL Workbench中设置语法提示为大写Workbench简介MySQL Workbench是一款流行的MySQL数据库管理工具,它提供了许多功能来帮助开发人员更有效地管理和操作数据库...其中一个功能是语法提示,它可以在你编写SQL代码时提供自动完成和建议,提高编码的效率和准确性。本文将介绍如何在MySQL Workbench中设置语法提示为大写,使关键字以大写形式显示。...问题我们一位学员在使用workbench时出现了关键字为小写的情况,正常情况下,命中之后关键字会自动变为大写,但是学员的并没有自动变为大写,如下图:图片所以他询问了如何将语法自动提示设置为大写的方法。...Query Editor,如下图:图片勾选Use UPPERCASE keywords on completion以及Change kewords to UPPER CASE,如下图:图片点击OK,保存并退出...总结通过将MySQL Workbench中的语法提示设置为大写,我们可以在编写SQL代码获得更清晰和一致的提示。这有助于提高编码的效率和准确性,并使你的代码更易读。

    19430

    吐血总结!50道Python面试题集锦(附答案)「建议收藏」

    Python没有访问说明(C ++的public,private)。 在Python中,函数是第一类对象。它们可以分配给变量。类也是第一类对象 编写Python代码很快,但运行比较慢。...它是一组规则,指定如何格式化Python代码获得最大可读性。 Q6、如何在Python中管理内存? python中的内存管理由Python私有堆空间管理。...Q31、如何在python中注释多行? 注释多行代码时。所有要注释的行都要在开头前加#。还可以使用快捷方式来注释多行,就是按住Ctrl键并在每个想要包含#字符的地方左键单击并键入一次#。...Q35、当Python退出时,为什么不清除所有分配的内存? 当Python退出时,尤其是那些对其他对象具有循环引用的Python模块或者从全局名称空间引用的对象并没有被解除分配或释放。...Q43、如何在Python中删除文件? 要在Python中删除文件,您需要导入OS模块。之后,您需要使用os.remove()函数。 Q44、什么是python的内置类型?

    10.5K10

    python面试题目及答案(数据库常见面试题及答案)

    Python没有访问说明(C ++的public,private)。 在Python中,函数是第一类对象。它们可以分配给变量。类也是第一类对象 编写Python代码很快,但运行比较慢。...它是一组规则,指定如何格式化Python代码获得最大可读性。 Q6、如何在Python中管理内存? python中的内存管理由Python私有堆空间管理。...Q31、如何在python中注释多行? 注释多行代码时。所有要注释的行都要在开头前加#。还可以使用快捷方式来注释多行,就是按住Ctrl键并在每个想要包含#字符的地方左键单击并键入一次#。...Q35、当Python退出时,为什么不清除所有分配的内存? 当Python退出时,尤其是那些对其他对象具有循环引用的Python模块或者从全局名称空间引用的对象并没有被解除分配或释放。...Q43、如何在Python中删除文件? 要在Python中删除文件,您需要导入OS模块。之后,您需要使用os.remove()函数。 Q44、什么是python的内置类型?

    11.2K20
    领券