代码拉取完成,页面将自动刷新
#pragma once
#include <iostream>
#include <string>
#include <cstdio>
#include <set>
#include "Command.hpp"
#include "InetAddr.hpp"
#include "Log.hpp"
using namespace LogModule;
class Command
{
public:
std::string Execute(const std::string &cmd, InetAddr &addr)
{
std::string who = addr.StringAddr();
// 2. 执行命令
FILE *fp = popen(cmd.c_str(), "r");
if(nullptr == fp)
{
return std::string("你要执行的命令不存在: ") + cmd;
}
std::string res;
char line[1024];
while(fgets(line, sizeof(line), fp))
{
res += line;
}
pclose(fp);
std::string result = who + "execute done, result is: \n" + res;
LOG(LogLevel::DEBUG) << result;
return result;
}
~Command()
{}
private:
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。