2012-11-22 42 views
0

在shell上有可能使用Pipe將輸出提供給另一個程序。使用`backticks`而不是Pipe |讀取值C++

例如:::

ps axu | grep someprocess 

現在我想編寫一個C++程序,接受這些管道了。

我找到了類似的解決方案。

using namespace std; 

int main() 
{ 
    string mypipe; 
    if(cin); 
    { 
     cin >> mypipe; 
     cout << mypipe << endl; 
    } 
    return 0; 
} 

現在我想,我可以用反引號調用我的函數。

例如,我正在使用這樣的shell構造。

./myprog.bin `./otherprog.bin someparameter` 

我怎樣才能讀取otherprog.bin生成到我的程序使用參數,而不是輸出?

回答

2

添加命令行參數,你的主要功能,如:

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

argc是參數計數,argv持有它們的表。

+0

-.-爲什麼我現在無法達到目標......謝謝 – r4d1um