2012-12-12 53 views
5

अन्य प्रक्रियाओं को डी में असीमित रूप से कॉल करने का पसंदीदा तरीका क्या है? मेरा उपयोग केस svn status को बाहर निकलने की स्थिति की जांच कर रहा है, और इसके मानक आउटपुट और त्रुटि को पार्स कर रहा है।Async प्रक्रिया कॉल

उत्तर

5

मुझे लगता है कि std.stdio.popen तुम क्या चाहते है:

void popen(string command, in char[] stdioOpenmode = "r"); 

एक File साथ उसका उपयोग करें और आप आउटपुट प्राप्त; की तरह कुछ:

File f; 
f.popen("svn status", "r"); 
char[] line; 
string result; 
while (f.readln(line)) 
    result ~= line; 
return result; 

या आप std.process.shell जो जाहिरा तौर पर आप के लिए यह करता है (और त्रुटि पर एक ErrnoException फेंकता है) का उपयोग कर सकते हैं।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^