टर्मिनल में nth लाइन के अंत में वर्ण जोड़ें


1

मैं कमांड लाइन से किसी फ़ाइल के एन : एन लाइन के अंत में कई रिक्त स्थान जोड़ने की कोशिश कर रहा हूं ।

किसी ने मुझे दिखा सकते हैं कि कैसे करना है?


क्या आपका मतलब है "हर nth लाइन"? या सिर्फ "लाइन नंबर n"?
ग्लेन जैकमैन 16

@glennjackman हर nth लाइन
16

जवाबों:


5

यदि आपका मतलब "लाइन नंबर एन" है, तो sed का उपयोग करें:

n=5
sed -i "${n} s/$/    /" file

यदि आपका मतलब "हर nth लाइन" है, तो awk का उपयोग करें:

awk -v "n=$n" 'NR % n == 0 {$0 = $0 "    "} {print}' file > file.new

या पर्ल

perl -i -pe '$. % '"$n"' == 0 && $_ .= "    "' file

क्षमा करें - awk का उपयोग करने की कोशिश की गई, अब त्रुटि हो रही है: अमान्य -v विकल्प कोई विचार? @ मंगल
१४

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