आप एक रूबी स्क्रिप्ट में एक सिस्टम कॉल का उपयोग करते हैं, तो आप इस तरह है कि आदेश के उत्पादन प्राप्त कर सकते हैं:क्या मुझे रूबी में सिस्टम कॉल से निरंतर आउटपुट मिल सकता है?
output = `ls`
puts output
है यही कारण है कि this question बारे में था।
लेकिन क्या सिस्टम कॉल के निरंतर आउटपुट दिखाने का कोई तरीका है? उदाहरण के लिए, अगर आप इस सुरक्षित प्रतिलिपि आदेश चला, SSH पर एक सर्वर से एक फ़ाइल प्राप्त करने के लिए:
scp [email protected]:remoteFile /some/local/folder/
... यह डाउनलोड की प्रगति के साथ सतत उत्पादन को दर्शाता है। लेकिन यह:
output = `scp [email protected]:remoteFile /some/local/folder/`
puts output
... उस आउटपुट को कैप्चर नहीं करता है।
मैं अपनी रूबी लिपि के अंदर से डाउनलोड की चल रही प्रगति कैसे दिखा सकता हूं?
आप दो ओर्थोगोनल समस्याओं यहाँ था, क्योंकि SCP केवल डिफ़ॉल्ट रूप से टर्मिनलों के लिए आउटपुट, आप की जरूरत * SCP -v * – tokland
@tokland - यह है कि यह उत्पादन डिबगिंग संदेशों को हो जाता है, लेकिन नहीं हस्तांतरण प्रगति है कि मैं देखना होगा अगर मैं सिर्फ अकेले scp भाग गया। मुझे लगता है कि उन्हें मानक आउटपुट पर नहीं जाना चाहिए, और मुझे उन्हें भेजने के लिए एसपीपी के लिए कोई विकल्प नहीं दिख रहा है। –
स्पष्ट रूप से एसपीपी उस प्रगति की जानकारी को "इंटरैक्टिव टर्मिनल" भेजता है? सुनिश्चित नहीं है कि इसे कैप्चर कैसे करें ... –