चाहते हैं तो आप sed
के साथ एक पंक्ति-दर-पंक्ति के आधार पर नई-पंक्तियों को बदल नहीं सकते। आपको लाइनों को जमा करना होगा और को के बीच नईलाइनों को प्रतिस्थापित करना होगा।
text abc\n <- can't replace this one
text abc\ntext def\n <- you can replace the one after "abc" but not the one at the end
यह sed
स्क्रिप्ट सभी लाइनों जम जाता है और सभी नई-पंक्तियों लेकिन पिछले समाप्त:
sed -n '1{x;d};${H;x;s/\n/\t/g;p};{H}'
वैसे, अपने sed
स्क्रिप्ट sed -e "s_/\n_/\t_g"
कहने के लिए "सभी स्लैश के साथ नई-पंक्तियों के बाद की जगह कोशिश कर रहा है टैब के बाद slashes "। अंडरस्कोर s
कमांड के लिए डिलीमीटर की भूमिका निभा रहे हैं ताकि स्लेश को खोज और प्रतिस्थापित करने के लिए वर्णों के रूप में आसानी से उपयोग किया जा सके।
स्रोत
2009-10-24 15:12:56
+1 40 सेकंड तक मुझे मारो – Nifle
@ निफ्ले: यहां कोई भी बिल्ली नहीं है, लेकिन कौन गिन रहा है? :) – Telemachus
शायद यह इंगित करना चाहें कि 'न्यूलाइन' टेक्स्टफाइल – Nifle