C++/Php/Python 语言执行shell命令的方法(推荐)
编程中经常需要在程序中使用shell命令来简化程序,这里记录一下。
1. C++ 执行shell命令
#include <iostream> #include <string> #include <stdio.h> int exec_cmd(std::string cmd, std::string &res){ if (cmd.size() == 0){ //cmd is empty return -1; } char buffer[1024] = {0}; std::string result = ""; FILE *pin = popen(cmd.c_str(), "r"); if (!pin) { //popen failed return -1; } res.clear(); while(!feof(pin)){ if(fgets(buffer, sizeof(buffer), pin) != NULL){ result += buffer; } } res = result; return pclose(pin); //-1:pclose failed; else shell ret } int main(){ std::string cmd = "ls -ial"; std::string res; std::cout << "ret = " << exec_cmd(cmd, res) << std::endl; std::cout << res << std::endl; return 0; }
2. Php执行shell命令
<?php $cmd = "wc -l ./test.php"; exec($cmd, $output, $code); echo $code."\n"; print_r($output); ?>
3. Python执行shell命令
import commands status, output = commands.getstatusoutput('ls -lt') print status print output
以上这篇C++/Php/Python 语言执行shell命令的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
C++/Php/Python/Shell 程序按行读取文件或者控制台的实现
写程序经常需要用到从文件或者标准输入中按行读取信息,这里汇总一下.方便使用 1. C++ 读取文件 #include<stdio.h> #include<string.h> int main(){ const char* in_file = "input_file_name"; const char* out_file = "output_file_name"; FILE *p_in = fopen(in_file, "r"
-
将Python代码嵌入C++程序进行编写的实例
把python嵌入的C++里面需要做一些步骤 安装python程序,这样才能使用python的头文件和库 在我们写的源文件中增加"Python.h"头文件,并且链入"python**.lib"库(还没搞清楚这个库时静态库还是导出库,需要搞清楚) 掌握和了解一些python的C语言api,以便在我们的c++程序中使用 常用的一些C API函数 在了解下面的函数之前有必要了解一下**PyObject***指针,python里面几乎所有的对象都是使用这个指
-
C++/Php/Python 语言执行shell命令的方法(推荐)
编程中经常需要在程序中使用shell命令来简化程序,这里记录一下. 1. C++ 执行shell命令 #include <iostream> #include <string> #include <stdio.h> int exec_cmd(std::string cmd, std::string &res){ if (cmd.size() == 0){ //cmd is empty return -1; } char buffer[1024] = {0}; s
-
python ssh 执行shell命令的示例
# -*- coding: utf-8 -*- import paramiko import threading def run(host_ip, username, password, command): ssh = paramiko.SSHClient() try: ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(host_ip, 22, username, password) print('====
-
Java JSch远程执行Shell命令的方法
目录 背景 JSch简介 使用示例 需要注意的点 参考文档 背景 项目需求,需要远程 ssh 登录到某个节点执行 shell 命令来完成任务.对于这种需求,如果不用 java 程序,直接 linux 的 ssh 命令就可以完成,但是在编码到程序中时需要相关的程序包来完成,本文主要介绍在 java 中如何使用 JSch 包实现 ssh 远程连接并执行命令. JSch 简介 JSch是Java Secure Channel的缩写.JSch是一个SSH2的纯Java实现.它允许你连接到一个SSH服务器
-
python中执行shell命令的几个方法小结
最近有个需求就是页面上执行shell命令,第一想到的就是os.system, 复制代码 代码如下: os.system('cat /proc/cpuinfo') 但是发现页面上打印的命令执行结果 0或者1,当然不满足需求了. 尝试第二种方案 os.popen() 复制代码 代码如下: output = os.popen('cat /proc/cpuinfo') print output.read() 通过 os.popen() 返回的是 file read 的对象,对其进行读取 read() 的
-
python 执行shell命令并将结果保存的实例
方法1: 将shell执行的结果保存到字符串 def run_cmd(cmd): result_str='' process = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) result_f = process.stdout error_f = process.stderr errors = error_f.read() if errors: pass result_str =
-
解决python 执行shell命令无法获取返回值的问题
问题背景:利用python获取服务器中supervisor状态信息时发现未能获取到返回值. python获取执行shell命令后返回值得几种方式: # 1.os模块 ret = os.popen("supervisorctl status") ret_data = ret.read() # 2.subprocess模块 ret = subprocess.Popen('supervisorctl status',shell=True,stdout=subprocess.PIPE) out
-
对python中执行DOS命令的3种方法总结
1. 使用os.system("cmd") 特点是执行的时候程序会打出cmd在Linux上执行的信息. import os os.system("ls") 2. 使用Popen模块产生新的process 现在大部分人都喜欢使用Popen.Popen方法不会打印出cmd在linux上执行的信息.的确,Popen非常强大,支持多种参数和模式.使用前需要from subprocess import Popen, PIPE.但是Popen函数有一个缺陷,就是它是一个阻塞的方
-
python SSH模块登录,远程机执行shell命令实例解析
用python SSH模块登录,并在远程机执行shell命令 (在CentOS 7 环境试验成功, Redhat 系列应该是兼容的.) 先安装必须的模块 # yum install python-dev # yum install python-devel # pip install pycrypto # pip install paramiko # pip install ssh 这些都成功后, 编写一个Python脚本 # vim remote_run.py import ssh # 新建一
-
Python使用paramiko连接远程服务器执行Shell命令的实现
需求 在自动化测试场景里, 有时需要在代码里获取远程服务器的某些数据, 或执行一些查询命令,如获取Linux系统版本号 \ 获取CPU及内存的占用等, 本章记录一下使用paramiko模块SSH连接服务器的方法 1. 先安装paramiko库 pip3 install paramiko 2. 代码 #!/usr/bin/env python # coding=utf-8 """ # :author: Terry Li # :url: https://blog.csdn.net
-
python中执行shell的两种方法总结
一.使用python内置commands模块执行shell commands对Python的os.popen()进行了封装,使用SHELL命令字符串作为其参数,返回命令的结果数据以及命令执行的状态: 该命令目前已经废弃,被subprocess所替代: # coding=utf-8 ''' Created on 2013年11月22日 @author: crazyant.net ''' import commands import pprint def cmd_exe(cmd_String): p
随机推荐
- 详解vue-cli中的ESlint配置文件eslintrc.js
- 在iOS App中实现地理位置定位的基本方法解析
- js解析json读取List中的实体对象示例
- js实现瀑布流效果(自动生成新的内容)
- C#获取真实IP地址实现方法
- 详解Vue.js搭建路由报错 router.map is not a function
- JavaScript 产生不重复的随机数三种实现思路
- js获取input长度并根据页面宽度设置其大小及居中对齐
- 基于jquery的图片的切换(以数字的形式)
- js中对函数设置默认参数值的3种方法
- JS 单击连接保存图片的函数
- C#实现带阴历显示的日期代码
- Android使用TabLayout+Fragment实现顶部选项卡
- 编写PHP的安全策略
- 老生常谈C/C++内存管理
- 12条写出高质量JS代码的方法
- 使用C#实现写入系统日志
- java实现从网络下载多个文件
- Springmvc 4.x利用@ResponseBody返回Json数据的方法
- JS实现图片轮播效果实例详解【可自动和手动】