<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      獲取標(biāo)準(zhǔn)shell 命令的輸出內(nèi)容

      cmdline.h

      #include <iostream> #include <mutex>

      class Cmdline {

      private:

              Cmdline() = default;

      public:

              ~Cmdline() = default;

              Cmdline(const Cmdline& cmd) = delete;

              Cmdline& operator=(const Cmdline& cmd) = delete;

      public:

              static Cmdline& getInstance();

              void executeCMD(const std::string& cmd, std::string& result);

      private:

              static std::mutex m_mutex;

      };

       

      cmdline.cpp

      #include "cmdline.h"

      #include "stdio.h"

      std::mutex Cmdline::m_mutex;

      Cmdline& Cmdline::getInstance()

      {

              std::lock_guard<std::mutex> lck(m_mutex);

              static Cmdline instance;

              return instance;

      }

      void Cmdline::executeCMD(const std::string& cmd, std::string& result)

      {

              char buf_ps[1024] = {0};

              std::string temp_cmd = cmd + " 2>&1"; //標(biāo)準(zhǔn)錯誤重定向到標(biāo)準(zhǔn)輸出

              FILE* ptr = nullptr;

              if((ptr = popen(temp_cmd.c_str(), "r")) != nullptr)

              {

                      while(fgets(buf_ps, 1024, ptr) != nullptr)

                      {

                              result += buf_ps;

                      }

                      pclose(ptr);

                      ptr = nullptr;

              }

              else

              {

                      std::cout << "popen %s error!!" << std::endl;

              }

      }

       

      test.cpp

      #include "cmdline.h"

      int main(int argc, char* argv[])

      {

              if(argc != 2)

              {

                      std::cout << "error number args" << std::endl;

                      return -1;

              }

              std::string strResult = "";

              std::string cmd = argv[1];

              Cmdline::getInstance().executeCMD(cmd, strResult);

              std::cout << "result: " << strResult << std::endl;

              return 0;

      }

       

      posted @ 2018-09-25 17:17  HenryLiuY  閱讀(4030)  評論(0)    收藏  舉報
      主站蜘蛛池模板: A级日本乱理伦片免费入口| 1000部精品久久久久久久久| 少妇人妻精品无码专区视频| 2019国产精品青青草原| 中文字幕丰满乱子无码视频| 国内少妇人妻偷人精品视频| 国产av丝袜熟女一二三| 又爽又黄又无遮掩的免费视频| 无码国产偷倩在线播放| 亚欧美闷骚院| 性色av不卡一区二区三区| 中文字幕日韩一区二区不卡| 成人拍拍拍无遮挡免费视频 | 国产成人一区二区不卡| 色欲av无码一区二区人妻| 亚洲综合无码久久精品综合| 亚欧成人精品一区二区乱| 国产成人午夜在线视频极速观看| 丁香婷婷色综合激情五月| 亚洲成av人最新无码不卡短片| 亚洲AV无码久久久久网站蜜桃| 国产成人毛片无码视频软件| 免费国产好深啊好涨好硬视频| 在国产线视频A在线视频| 熟女人妻视频| 亚洲精品精华液一区二区| 亚洲成av人片在www鸭子| 亚洲综合色成在线播放| 国产精品久久久久影院亚瑟| 日本高清中文字幕免费一区二区| 欧美三级a做爰在线观看| 亚洲欧美日本久久网站| 亚洲综合久久国产一区二区| 国产精品无码免费播放| 国产成人精品永久免费视频 | 男女啪啪18禁无遮挡激烈| 兴安盟| 大肉大捧一进一出好爽视频mba| 在线观看精品日本一区二| 国产成人精品午夜2022| 精品福利一区二区三区免费视频|