c - Pass a string as standard input to an executable -


मेरे पास count = read (pipes, buffer, buffsize); और क्या चलाने की कोशिश कर रहा हूँ

printf ("% s", बफर); इसे ठीक से प्रिंट करता है, लेकिन इसके माध्यम से चल रहा है, यह एक अन्य निष्पादन योग्य माध्यम से प्राप्त किया गया है (बफर)। execl ("/ path", "/ path", बफ़र, नल); या कई अन्य तरीकों से मैंने कोशिश की है, पथ एक संकलित निष्पादन योग्य है।

अगर मैं execv ("। / Path", STDIN_FILENO) का उपयोग करता है तो निष्पादन योग्य करता है ठीक; / कोड>, लेकिन यह पाइप से नहीं लिया जा रहा है पथ स्ट्रिंग के रूप में मानक इनपुट की अपेक्षा कर रहा है।

प्रोग्राम की स्थिति यह है कि मैं एक प्रोग्राम पर एक लूप का उपयोग करते हुए इनपुट में टाइप कर रहा हूं और read ( ) , उस पाठ को execl चल रहा है जो प्रोग्राम में पाठ भेजने के लिए एक पाइप का उपयोग करके (इस प्रोग्राम में कुछ और नहीं करना आवश्यक है), वह तब स्ट्रिंग के साथ निष्पादन योग्य कॉल करने का प्रयास कर रहा है एक stdin के रूप में। पाइप के माध्यम से आने वाले स्ट्रिंग का एक उदाहरण है यह एक उदाहरण है । यह उदाहरण है

निष्पादन योग्य को यह इनपुट के रूप में मानक इनपुट की आवश्यकता है।

मैं सही तरीके से / path के लिए मानक इनपुट के रूप में इस्तेमाल होने वाली स्ट्रिंग कैसे प्राप्त कर सकता हूं?

यह लगता है कि popen () आपके वांछित पाइप खोलने के लिए है निष्पादन योग्य ताकि आप या तो अपने मानक इनपुट के लिए सामान पास कर सकते हैं या अपने मानक आउटपुट से सामग्री पढ़ सकते हैं।

उदाहरण के लिए:

  #define _POSIX_C_SOURCE 200809L #include & lt; stdio ज & gt; # शामिल करें & lt; stdlib.h & gt; Int मुख्य (शून्य) {FILE * p = popen ("/ bin / cat", "w"); अगर (! पी) {दर्पण ("त्रुटि खोलने पाइप"); वापसी EXIT_FAILURE; } Fputs ("मुझे / bin / cat \ n", p के माध्यम से इको); अगर (पक्लोस (पी) == -1) {दर्पण ("त्रुटि समापन पाइप"); वापसी EXIT_FAILURE; } वापसी 0; }   

जो आउटपुट करता है:

  paul @ thoth: ~ / src / sandbox $ ./testpopen मुझे / bin / cat paul @ thoth के माध्यम से इको: ~ / Src / sandbox $    

Comments

Popular posts from this blog

php - How can I cram 6+31 numeric characters into 22 alphanumeric characters? -

mysql - where clause in inner join query -

java - Why my included JSP file won't get processed correctly? -