इनपुट के अंत में एक खाली लाइन जोड़ना


11

मेरे पास कुछ कमांड है जो इस तरह से बिना किसी नई लाइन के आउटपुट का उत्पादन करता है

Myprompt$ somecmd
dksfjdl
dsfjdlkfj
dsfjdkfj
dfjdkfjMyprompt$

वर्तमान में मैं इससे उबर चुका हूं। somecmd | sed 's/$/\n/' | tr -s '\n' क्या ऐसा करने का एक बेहतर तरीका है?

जवाबों:


19

बस इसके बाद इको चलाएं, यह एक नई लाइन उत्पन्न करना चाहिए

Myprompt$ somecmd ; echo

और अगर आपको इसे किसी और चीज़ को खिलाने की ज़रूरत है, तो इसे एक उप-शेल में चलाएं:

Myprompt$ ( somecmd ; echo ) | someothercmd

या .. जैसा कि @camh बताता है, सबस्क्रिप्शन वास्तव में जरूरी नहीं है कि आप इसे वर्तमान शेल वातावरण में कमांड सूची के साथ निष्पादित कर सकते हैं:

Myprompt$ { somecmd ; echo ; } | someothercmd

3

इसे कुछ यूटिलिटी के जरिए फीड करें जो इनपुट लाइनों और आउटपुट लाइनों में पढ़ते हैं, जैसे awk { print $0 }

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.