C++ (POSIX) में कमांड कैसे चलाएं और उसका आउटपुट प्राप्त करें?
नमस्ते साथियों! मैंने अभी Linux पर C++ सीखना शुरू किया है और एक समस्या का सामना किया: मुझे एक बाहरी कमांड (जैसे `ls -la` या `ping google.com`) को execute करना है और उसका आउटपुट सीधे प्रोग्राम में प्राप्त करना है। मैंने `system()` का प्रयोग किया — यह काम करता है, लेकिन केवल exit code लौटाता है, जबकि आउटपुट कंसोल में दिखता है। मुझे इस आउटपुट को एक string में capture करना है ताकि बाद में process कर सकूं।
उदाहरण के लिए, मैं एक utility लिख रहा हूं जो जांचती है कि कौन सी processes चल रही हैं। मैं `ps aux` execute करना चाहता हूं और परिणाम का विश्लेषण करना चाहता हूं। लेकिन C++ में POSIX style में यह कैसे करें? मैंने `popen()` के बारे में सुना है, लेकिन यकीन नहीं है कि यह सबसे अच्छा तरीका है। `fork()`, `exec()`, `pipe()` भी हैं — ये एक beginner के लिए जटिल लगते हैं। क्या कोई सरल और विश्वसनीय तरीका है?
यह मेरा current code है जो सही से काम नहीं कर रहा:
```cpp
#include
#inc