मेरे पास एक स्क्रिप्ट है जो निम्नलिखित पाठ को आउटपुट करती है। यह एक नेटोपिया 2210-02 ADSL2 मॉडेम से आउटपुट है ।
ADSL Line State: Up
ADSL Startup Attempts: 1
ADSL Modulation: DMT
ADSL Data Path: Fast
Datapump Version: DSP 7.2.3.0, HAL 7.2.1.0
SNR Margin: 8.20 9.00 dB
Line Attenuation: 57.50 31.00 dB
Output Power: 17.09 12.34 dBm
Errored Seconds: 0 0
Loss of Signal: 0 476
Loss of Frame: 0 0
CRC Errors: 57921 416
Data Rate: 2880 1024
मैं प्रत्येक पंक्ति के लिए अंतिम-पंक्ति वर्ण को कैसे निकाल सकता हूं? मैं चाहूंगा कि आउटपुट कुछ इस तरह दिखे (हाँ यह बदसूरत है):
ADSL Line State: Up ADSL Startup Attempts: 1 ADSL Modulation: DMT ADSL Data Path: Fast Datapump Version: DSP 7.2.3.0, HAL 7.2.1.0 SNR Margin: 8.20 9.00 dB Line Attenuation: 57.50 31.00 dB Output Power: 17.09 12.34 dBm Errored Seconds: 0 0 Loss of Signal: 0 476 Loss of Frame: 0 0 CRC Errors: 57921 416 Data Rate: 2880 1024
मैंने इस तरह के कुछ समाधानों की कोशिश की, लेकिन वे काम नहीं करते हैं:
# (This simply outputs the contents of the script, unmodified)
stefanl@hosta:~/Work/Cacti $ ./script | sed -e 's/$//'
मैंने भी प्रयोग करने की कोशिश की tr
। मैं निम्नलिखित कमांड की अपेक्षा कर रहा था कि प्रत्येक न्यूलाइन कैरेक्टर को स्पेस कैरेक्टर से बदल दिया जाए। यह कई लाइनों को ले जाएगा और उन्हें एक लंबी सिंगल लाइन में संयोजित करेगा। इसके बजाय, यह केवल आउटपुट की अंतिम पंक्ति प्रदर्शित करता है। यह उत्पादन की अगली पंक्ति के साथ प्रत्येक बाद की पंक्ति को अधिलेखित करने के लिए लगता है।
stefanl@hosta:~/Work/Cacti $ ./script | tr '\n' ' '
Data Rate: 2880 1024stefanl@hosta:~/Work/Cacti $
stefanl@hosta:~/Work/Cacti $
अपडेट :
आगे की परीक्षा में, ऐसा लगता है कि प्रत्येक पंक्ति एक रिटर्न चरित्र से पहले है। यह ^M
उपयोग करते समय दिखाता है less
। इसलिए, मैंने दो tr
बयान जोड़े । न्यूलाइन वर्णों को हटाने के लिए एक, वापसी वर्ण को हटाने के लिए एक।
./script | | tr -d '\n' | tr -d '\r'
tr '\n' ' '
औरtr -d '\n'
एक अजीब तरह से लाइन लपेटो जाएगा। मैंने परिणाम दिखाने के लिए अपना प्रश्न अपडेट किया। तो, शायद मुझे उपयोग करने की आवश्यकता हैtr
, लेकिन मुझे यह पता लगाने की आवश्यकता है कि इसका उपयोग कैसे करें।