मुझे स्क्रीन टाइमस्टैम्प प्रिंट करने का कोई तरीका नहीं मिला। इसके बजाय, स्क्रीन की लॉग फ़ाइल बनाना और इसे awk के साथ प्रिंट करना अच्छी तरह से काम करता है!
1. लॉग फ़ाइल बनाने के लिए स्क्रीन बनाने के लिए (या संपादित करें) ~ /।
लॉगिंग कॉन्फ़िगरेशन को अपने होम निर्देशिका में। स्क्रीनशॉट (स्क्रीन की कॉन्फ़िगरेशन फ़ाइल) में जोड़ें।
logfile "/path/to/log/file" # Specify log file name with absolute path.
logfile flush 1
deflog on
2. स्क्रीन शुरू करें
$ screen /dev/tty.usbserial 9600 -L
फिर स्क्रीन एक लॉग फ़ाइल बनाना शुरू करती है।
(लॉग फाइल बनाने के कुछ अन्य तरीके भी हैं।)
3. फ़ाइल को टेल + awk के साथ प्रिंट करें
इस शेल कमांड को किसी अन्य टर्मिनल विंडो में चलाएं।
$ tail -f screen.log | awk '{ print strftime("%H:%M:%S"), $0; fflush(); }'
यह टाइमस्टैम्प के साथ लॉग फ़ाइल को प्रिंट करता है!
15:41:27 xxx
15:41:28 xxx
15:41:29 xxx
15:41:30 xxx
15:41:31 xxx
यदि आप मानक आउटपुट और फ़ाइल दोनों के लिए टाइमस्टैम्प के साथ लॉग प्रिंट करना चाहते हैं, तो कृपया इसे टी कमांड को पाइप करें।
$ tail -f /path/to/log/file | awk '{print strftime("%H:%M:%S"),$0; fflush();}' | tee /path/to/another/file