时间:2022-02-21 10:56:53 | 栏目:C代码 | 点击:次
编程中经常需要在程序中使用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