मेरे पास एक लंबी चल रही पायथन स्क्रिप्ट है जिसे मैं कमांड लाइन से चलाता हूं। लिपि प्रगति संदेश लिखती है और मानक आउटपुट के परिणाम देती है। मैं स्क्रिप्ट को किसी फ़ाइल में मानक आउटपुट पर लिखने के लिए सबकुछ कैप्चर करना चाहता हूं, लेकिन इसे कमांड लाइन पर भी देख सकता हूं। वैकल्पिक रूप से, मैं चाहता हूं कि आउटपुट तुरंत फ़ाइल पर जाए, इसलिए प्रगति देखने के लिए मैं tail
का उपयोग कर सकता हूं। मैं इस की कोशिश की है:फ़ाइल और कमांड लाइन में स्क्रिप्ट आउटपुट कैसे लिखें?
python MyLongRunngingScript.py | tee log.txt
लेकिन यह किसी भी उत्पादन का उत्पादन नहीं करता है (बस चल अपेक्षा के अनुरूप स्क्रिप्ट उत्पादन का उत्पादन)। क्या कोई साधारण समाधान का प्रस्ताव दे सकता है? मैं मैक ओएस एक्स 10.6.4 का उपयोग कर रहा हूँ।
संपादित करें मैं अपनी स्क्रिप्ट में आउटपुट के लिए print
का उपयोग कर रहा हूं।
'' को stdout'' '' stderr'' धारा रीडायरेक्ट करने के लिए मत भूलना यदि आपने उस पर कब्जा करना चाहते हैं: 'python -u MyLongRunngingScript.py 2> और 1 | tee log.txt'' – stephenfin