您的位置:首页 > 运维架构 > Shell

C++/Php/Python 语言执行shell命令

2017-03-13 07:27 543 查看
编程中经常需要在程序中使用shell命令来简化程序,这里记录一下。

1. C++ 执行shell命令

1 #include <iostream>
2 #include <string>
3 #include <stdio.h>
4
5 int exec_cmd(std::string cmd, std::string &res){
6     if (cmd.size() == 0){   //cmd is empty
7         return -1;
8     }
9
10     char buffer[1024] = {0};
11     std::string result = "";
12     FILE *pin = popen(cmd.c_str(), "r");
13     if (!pin) { //popen failed
14         return -1;
15     }
16
17     res.clear();
18     while(!feof(pin)){
19         if(fgets(buffer, sizeof(buffer), pin) != NULL){
20             result += buffer;
21         }
22     }
23
24     res = result;
25     return pclose(pin); //-1:pclose failed; else shell ret
26 }
27
28 int main(){
29     std::string cmd = "ls -ial";
30     std::string res;
31
32     std::cout << "ret = " << exec_cmd(cmd, res) << std::endl;
33     std::cout << res << std::endl;
34
35     return 0;
36 }


2. Php执行shell命令

1 <?php
2     $cmd = "wc -l ./test.php";
3     exec($cmd, $output, $code);
4
5     echo $code."\n";
6     print_r($output);
7 ?>


3. Python执行shell命令

1 import commands
2
3 status, output = commands.getstatusoutput('ls -lt')
4
5 print status
6 print output
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: