python获取返回值_python 调用 shell ,获取返回值和返回信息

网络上有各种方案解决python调用shell的解决方案,但是没有一个完美的,以下是本人整理的一个方案,比较完美地解决了同时解决获取返回值和返回信息。

def run_linux_cmd_quiet(i_cmd, i_nohup='0'):

l_func_name=__name__+ '.' + sys._getframe().f_code.co_name

l_curTime=time.strftime('%Y%m%d_%H%M%S',time.localtime())

l_result=l_curTime+str(os.getpid())+'.log'

if i_nohup == '1':

l_cmd="nohup {cmd} > {result} 2>&1 &".format(cmd=i_cmd, result=l_result)

else:

l_cmd="{cmd} > {result} 2>&1".format(cmd=i_cmd, result=l_result)

val = os.system(l_cmd)

msg=file2List(l_result)

if 0 != val:

logger.print_error(l_func_name,common.concatString(l_cmd, 'failed.\n retCode:',val))

else:

os.system('rm -f ' + l_result)

if cfg.TRACE_FLAG == 'y':

logger.print_info(l_func_name, common.concatString(l_cmd, 'ok.\n retCode:',val))

return (val,msg)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/468973.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Springboot外卖系统20:前端菜品展示+菜品数量查询

1 菜品展示 1.1 需求分析 用户登录成功后跳转到系统首页,在首页需要根据分类来展示菜品和套餐。如果菜品设置了口味信息,需要展示 按钮,否则显示按钮。 1.2 前端页面分析 在开发代码之前,需要梳理一下前端页面和服务端的交互过…

python 播放声音_如何用Python播放声音?

对于Windows,可以使用winsound。它内置import winsound winsound.PlaySound(sound.wav, winsound.SND_FILENAME) 应该能够在Linux上使用ossaudodev:from wave import open as waveOpen from ossaudiodev import open as ossOpen s waveOpen(tada.wav,rb…

Android Flash分区大小查看

正常的8G Flash有多少可以用的 这样算吧: 硬盘和U盘厂家的算法:8GB*10008000MB*10008000000KB*10008000000000B电脑系统的算法:8000000000B/10247812500KB/10247629.4MB/10247.45GB 所以U盘在7.4G左右是正常的,是电脑系统算法和厂…

flash动画设计期末作业_「2019年下学期」第二十五二十六节:期末作品三-吉祥物设计...

初心伟大的艺术品不必追随潮流,他本身就能引领潮流。课前准备软件安装【2019(上)】《三维建模与动画设计》【2019年下学期】第一节:选修介绍及选修人数确定【2019年下学期】第二节:2D&3D设计之百事可乐图标设计【2019年下学期】第三四节&…

Angular2升级到Angular4

angular4终于在两天前发布了正式版本,那么怎么升级呢?其实angular2和angular4之间属于平滑过渡,并不像1和2之间颠覆性的重写代码. npm uninstall -g angular/clinpm cache cleannpm install -g angular/clilatestrm -rf node_modules dist # use rmdir /S/Q node_modules dist…

YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors

来源:https://arxiv.org/abs/2207.02696 代码:https://github.com/WongKinYiu/yolov7 0. Abstract YOLOv7 surpasses all known object detectors in both speed and accuracy in the range from 5 FPS to 160 FPS and has the highest accuracy 56.8…

在git上push代码时缺少Change-Id

问题 使用Git提交代码时,遇到missing Change-Id in commit message footer 会在提交失败信息中提示如何操作,缺失change-Id 会出现如下提示信息,Hint: To automatically insert Change-Id, install the hook: gitdir(gitrev−parse−−git−dir);scp−p−P29418namegit.co.co…

如何把一个网页生成一个快捷方式在桌面?_如何打造一个简洁、高效的桌面?

都2020年了,你的桌面仍是这样的? 或是这样的? 但当然你也见过这样的: 你当然会好奇,没有各种快捷方式、任何文件或文件夹的工作桌面,使用起来岂不效率低下?然则非也。我认为高效的工作得从舒服的…

Android ADB 源码分析(三)

前言 之前分析的两篇文章 Android Adb 源码分析(一) 嵌入式Linux:Android root破解原理(二) 写完之后,都没有写到相关的实现代码,这篇文章写下ADB的通信流程的一些细节 看这篇文章之前,请先阅读 Linux…

A Generative Adversarial Network-based Deep Learning Method for Low-quality Defect ImageReconstructi

A Generative Adversarial Network-based Deep Learning Method for Low-quality Defect ImageReconstruction and Recognition 中文名:基于生成对抗网络的深度低质量缺陷图像的学习方法重建与认可 主体思路概述:将模糊的图像使用Gan进行生成与重建&…

bootstrap3 表单构建器_FastReport.NET报表设计器连接到OracleDB关系数据库

首先,您可以使用ODBC连接器。但是它充满了很多设置。FastReport.NET报表设计器连接到OracleDB关系数据库如您所见,您需要创建数据源及其连接字符串。动作比较多。此方法的替代方法是使用FastReport中的连接器。实际上,有两个连接器可供选择。…

setTimeOut函数传参数

这样使用,后面的4000无效 setTimeout(removeGift(customer_id,gift_id),4000);function removeGift(customer_id,gift_id) {var x 100;var y 900;var rand parseInt(Math.random() * (x - y 1) y); // 随机的位置$("#gift_"customer_id"_"…

码农,选好你的老板

[01 两个小故事] 小明2009年毕业 那一年刚好是金融危机之后,全球经济还不是很好,找到一份好的工作非常困难。 好在,小明误打误撞面试上华为一份码农的工作。 刚开始那几年,小明很拼命,不断的在解bug和制造bug中自由…

Automated defect inspection system for metal surfaces based on deep learning and data augmentation

Automated defect inspection system for metal surfaces based on deep learning and data augmentation 基于深度学习和数据增强的金属表面缺陷自动检测系统 简述:卷积变分自动编码器(CVAE)生成特定的图像,再使用基于深度CNN的缺陷分类算法进行分类。在…

python第七章_python 第七章 模块

模块 一个py文件就是一个模块 模块一共三种:1.python标准库 2.第三方模块 3.应用程序自定义模块 import:1.执行对应文件 2.引入变量名 if__name__"__main__": #1.用于被调用文件测试 2.防止主程序被调用 time模块 常用命令 时间模块 1 importt…

openwrt 音频开发

1、Linux 音频架构图 音视频的好坏 直接影响 产品体验 2、音频架构图层次说明 openWRT 采用 ALSA 层次图,如下 Application: 上层应用 主要调用alsa-lib 中的接口 实现业务逻辑。使用alsa-util中aplay,arecord,amixer,speaker-test进行相关测试。HAL层 : 移植alsa-lib 和 a…

[3.30校内训练赛]

来自FallDream的博客,未经允许,请勿转载,谢谢。 --------------------------------------------------- ditoly这次打好了虐爆我们的主意,掏出三道丧题,囊括三种赛制,第一道丧病oi题,第二道sb交…

Automatic Detection of Welding Defects Using Faster R-CNN

Automatic Detection of Welding Defects Using Faster R-CNN 基于快速R-CNN的焊接缺陷自动检测 简介:使用Inception-ResNet模型进行缺陷检测 数据集:射线图像 Abstract Experts are required to properly detect the test results and it takes a lot…

让Android Studio支持系统签名(证书)

有时候,我们开发的apk需要用到系统权限,需要在AndroidManifest.xml中添加共享系统进程属性: android:sharedUserId"android.uid.system" android:sharedUserId"android.uid.shared" android:sharedUserId"android…