کمانڈ لائن سے متعدد دستاویزات میں متن کی جگہ & تلاش کریں۔
اگر آپ کمانڈ لائن کے ساتھ آرام دہ ہیں اور کبھی بھی ایسی صورتحال میں جہاں آپ کو متعدد ٹیکسٹ دستاویزات کے گروپ میں ایک لفظ، فقرہ، یو آر ایل، یا کردار تلاش کرنے اور تبدیل کرنے کی ضرورت ہے، تو پرل یہ کام بہت اچھی طرح کرتا ہے۔ ایک سادہ کمانڈ سٹرنگ بہت تیزی سے ایک گروپ بیچ کو ڈھونڈے گی اور متن کو تبدیل کرے گی، خواہ وہ ایک دستاویز میں ہو یا متعدد دستاویزات کے ایک گروپ پر پھیلا ہوا ہو۔
کمانڈ لائن میں بہت سی چیزوں کی طرح، کوئی تصدیقی عمل نہیں ہے، لہذا آپ یہ یقینی بنانا چاہیں گے کہ کمانڈ شروع کرنے سے پہلے آپ کا نحو درست طریقے سے ترتیب دیا گیا ہے، بصورت دیگر آپ کو کوئی اور تلاش اور تبدیل کرنے کی ضرورت پڑ سکتی ہے۔ اپنی ٹائپنگ کی غلطی کو ٹھیک کرنے کے لیے۔
بنیادی کمانڈ کا نحو درج ذیل ہے: perl -pi -w -e 's/THIS/THAT/g;' /path/to/files.txt
ایک لفظ کی مثال کے لیے، اگر آپ کو ہر .txt فائل میں "Ogre" کی تمام مثالوں کو "cornbread" سے تبدیل کرنے کی ضرورت ہے۔ "دستاویزات" فولڈر کے اندر، پھر آپ درج ذیل کمانڈ استعمال کریں گے:
perl -pi -w -e 's/ogre/cornbread/g;' ~/Documents/.txt
پورے فقرے کو تلاش کرنے اور بدلنے کی مثال کے لیے، فرض کریں کہ ہم پورے جملے کو تبدیل کرنے جا رہے ہیں "The Chocolate Factory .txt فائلوں کے ایک گروپ میں "The Wizard of Oz" کے ساتھ دستاویزات کی ڈائرکٹری میں محفوظ کردہ "فلموں" سے شروع ہوتی ہے:
perl -pi -w -e's/The Chocolate Factory/The Wizard of Oz/g;' ~/دستاویزات/فلمیں.txt
ڈھونڈنا اور بدلنا فوراً ہو جاتا ہے۔ آپ بلی اور گریپ کا استعمال کر کے تبدیلی کو چیک کر سکتے ہیں:
cat ~/Documents/Films124.txt |گریپ وزرڈ آف اوز"
اعتراف، یہ کافی ترقی یافتہ ہے، اور ہاں، متعدد دستاویزات کے ذریعے بیچ ڈھونڈنا اور تبدیل کرنا GUI ایپس جیسے TextWrangler اور BBEdit کے ذریعے زیادہ صارف دوست انداز میں کیا جا سکتا ہے، لیکن بعض اوقات کمانڈ لائن بہت تیز ہوتی ہے۔ اس جیسے اور اس سے ملتے جلتے کاموں کے لیے، نیز اسے استعمال کرنے کے لیے کسی اضافی ڈاؤن لوڈ کی ضرورت نہیں ہے۔
بہترین چال کے لیے لائف ہیکر کے لیے ایک بڑا انگوٹھا۔
اپ ڈیٹ: 'sed' کمانڈ کمانڈ لائن کے ذریعے فوری تلاش اور تبدیل کرنے کا ایک اور طریقہ ہے۔ sed کا احاطہ کرنا زیادہ تر دوسرے مضمون کے لیے ایک موضوع ہے، لیکن اس کام کے لیے sed کے استعمال کا بنیادی نحو قدرے آسان اور یاد رکھنا آسان ہے:
sed -i 's/THIS/THAT/g' /path/to/files.txt
کوئی صحیح یا غلط طریقہ نہیں ہے، لہٰذا آپ پرل استعمال کریں یا sed، یہ ذاتی ترجیح کا معاملہ ہے۔