2016-04-22 3 views
1

Я пишу код C++, где я беру имя процесса от пользователя, а затем я получаю идентификатор процесса с помощью команды pgrep process_name, после чего я убиваю его с помощью команды kill process_id, проблема в том, что я могу «т сохранить вывод команды pgrep в переменной, чтобы повторно использовать его снова, то будет то, что я достиг до сих пор я использую в Ubuntu терминалКак сохранить вывод с терминала на переменную

пс (stringcat функция я с ума, чтобы сцепить слова я использую в своей команде)

cout<<"enter the name of the process you wanna stop : "; 
    cin>>in; 
    string PID; 
    command=stringcat("pgrep ",in,""); 
    /* 
    const char*temp = command.c_str(); 
    PID=system(temp); 
    */ 
    command=stringcat("kill",PID,""); 
    const char*temp2 = command.c_str(); 
    system(temp2); 

ответ

1

popen является самый простой выбор, или вы можете использовать fork и заменить stdout дочернего процесса на то, что вы хотите.

Смежные вопросы