python如何调用编译后的可执行文件

来源:互联网 发布:杜老师的c编程密码 编辑:程序博客网 时间:2024/05/16 06:30
本人计算机萌新一枚,从今天开始写点平时遇到的问题,可能只是一个解决办法或者一些小小的感悟。或许研究得没那么深入,但也希望能够分享一些自己的经验。可能格式或者某些说法有些错误,望指正,谢谢。

前情提要

在工作的时候,对方发了一个写好并且编译好的包,linux版本下lib文件夹里全是.a文件(静态链接库),bin文件夹是编译好的可执行文件,但是我重构代码时使用的python,并不知道如何通过该文件调用对方给的接口。因为对方给的不是.so文件(动态链接库),不然我就能够通过os库直接进行调用了。

解决方式

我是通过python调用shell脚本运行可执行文件的接口实现对方给的功能。简单讲就是,写了个shell脚本运行可执行文件,并传入参数,实现功能。之后再通过python调用脚本来实现这个功能。


详细过程

-可执行文件接口
-shell脚本
-python调用shell脚本

可执行文件接口

使用实例

./文件名      './输入文件名.jpg'     './输出文件名.jpg'     123#最后一项为参数

shell脚本

因为过了两天了,记不清了,貌似是在这个过程中因为权限的问题需要到root下进行。(过两天查下资料测试一下,做修改)

首先进入root权限,然后新建一个shell脚本,再通过vim进行编写,同时在调用可执行文件的同时记得传入参数。

sudo sucd /usr/localtouch test.shvim test.sh#!/bin/bash/绝对路径/可执行文件名 $1 $2 $3

python调用shell脚本

通过调用os以及sys库,实现调用shell脚本和传入参数的功能

touch test.pyvim test.py#!/usr/bin/python##!/usr/bin/pythonimport osimport sysdef main():    arg0 = sys.argv[1]    arg1 = sys.argv[2]    arg2 = sys.argv[3]    os.system('/root/桌面 ' + arg0 + ' ' + arg1 + ' ' + arg2)if __name__ == '__main__':    main()

在终端输入以下代码:

test.py './输入文件名.jpg' './输出文件名.jpg' 123
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 定期的存折丢了怎么办 存折密码输错6次怎么办 营业执照原件丢失怎么办怎么注销 违章扣了14分怎么办 c1驾驶本过期了怎么办 考驾照没带身份证怎么办 上海扣满12分怎么办 美宝旅行证丢失怎么办 汽车证件全丢了怎么办 车的行驶本丢了怎么办 车和行驶证丢了怎么办 考驾照人在外地怎么办 外地考驾照没有居住证怎么办 考驾驶证预约密码忘了怎么办 考驾照密码忘了怎么办 考驾照的密码忘了怎么办 手机银行登录密码忘了怎么办 宽带账号或密码错误怎么办 车险过户联系不上原车主怎么办 换车了etc忘拆了怎么办 c1d驾驶证d证到期了怎么办 摩托车驾驶证过五年怎么办 没居住证想上东莞牌怎么办 外地考驾照需要暂住证怎么办 考驾照期间暂住证过期怎么办 b2驾照扣了6分怎么办 c1驾照扣了11分怎么办 c1驾驶证分扣9分怎么办 驾驶证c照扣6分怎么办 驾照过期1个月怎么办 上海驾驶证b证扣分怎么办 临时牌驾照丢了怎么办 行驶证年审过期两年怎么办 驾证到期了没换怎么办 在非洲被蚊子咬怎么办 身份证丢了被非法贷款怎么办 未满16岁怎么办身份证 放弃继承权后想反悔怎么办 上海居住证积分中社保断怎么办 换驾驶证但是身份证地址变动怎么办 驾驶证b证扣分了怎么办