यह एक पर्ल oneliner होना है?
perl -i -pe 's/\d+\./ /g' <fileName>
पर्ल कमांड लाइन विकल्प: -i
क्या इनपुट फ़ाइल के लिए होता निर्दिष्ट करने के लिए प्रयोग किया जाता है। यदि आप इसे फ़ाइल एक्सटेंशन नहीं देते हैं, तो मूल फ़ाइल खो जाती है और इसे पर्ल मंग आउटपुट द्वारा प्रतिस्थापित किया जाता है।
perl -i.bak -pe 's/\d+\./ /g' <fileName>
मूल फ़ाइल एक .bak
प्रत्यय और <fileName> ही अपने उत्पादन होते हैं साथ संग्रहीत किया जाएगा: उदाहरण के लिए, अगर मैं इस किया था।
-p
एक प्रिंट पाश है कि लग रहा है कुछ हद तक इस तरह में अपने पर्ल कार्यक्रम को संलग्न करने का अर्थ है:
while ($_ = <>) {
<Your Perl one liner>
print "$_";
}
यह कुछ हद तक एक सरल व्याख्या क्या हो रहा है है। आप कमांड लाइन से perldoc perlrun
कर वास्तविक पर्ल लूप देख सकते हैं। मुख्य विचार यह है कि आप सिर्फ sed
या awk
की तरह एक फ़ाइल की प्रत्येक पंक्ति पर कार्य करने की अनुमति देता है।
-e
में बस आपके पर्ल कमांड शामिल हैं।
तुम भी फ़ाइल पुनर्निर्देशन भी कर सकते हैं:
perl -pe 's/\d+\./ /g' <xyz.txt> xyz.txt.out
स्रोत
2010-12-05 22:26:52
मैं व्यक्तिगत रूप से टाइप करने के लिए 'पर्ल -pie' क्योंकि तब यह एक शब्द मंत्र की तरह है, लेकिन यह कोई फर्क नहीं पड़ता। –