خاص موقعن تي اسان کي فائلن يا گھڻن کان هڪ مخصوص لائن ختم ڪرڻ جي ضرورت آهي ، مثال طور ، اهو مون سان ٿيو آهي ته مون وٽ فائلن جي پوري فهرست هئي ۽ مون کي انهن سڀني کي لڪير نمبر 27 کي ختم ڪرڻ جي ضرورت آهي (لائن # 27 اهو آهي) هڪ اي سي ايل جو ، عام ، قاعدو ، ترتيب ڏيڻ) ، مان يا ته فائيل فائيل ۾ تبديلي آڻي سگهان ٿو يا حاصل ڪري سگهان ٿو مون کي جيڪو حڪم جي استعمال جي ضرورت آهي سي ۽ بيش اسڪرپٽ (اختياري)
پر ، اچو ته هڪ فائل کي بلڪل سادو ڏسڻ ڏيو.
اسان وٽ فائل آھي distros-deb.txt جنهن ۾ شامل آهي:
ڏيون
ڪوببي
آرڪائنلڪسڪس
سولائيز
پيغام
ٻين لفظن ۾ ، فائل distros-deb.txt ڪٿي آهي اسان ڊبين تي ٻڌل ڊائروس رکون ٿا ، پر اتي اسان ڏسندا آهيون ته # 3 واري لائن ۾ "آرچينڪس" آهي ، هڪ پريشاني آهي جو بظاهر ڪجهه به ناهي آئي ڊيبين سان ، تنهنڪري اسان کي اهو لڪائي ختم ڪرڻ گهرجي. انهي فائل جي لائين نمبر 3 کي ختم ڪرڻ لاءِ اسان هيٺيان رکنداسين:
sed "3d" distros-deb.txt > distros-deb-ok.txt
ھن لڪير کي بيان ڪرڻ ڪجھ آسان آھي ، سان پياس "3 ڊي" اسان ظاهر ڪري رهيا آهيون ته اسين لائن # 3 کي ختم ڪنداسين distros-deb.txt اسان ظاهر ڪيو ٿا ته ڪهڙي فائل تي ڪم ڪرڻ گهرجي ، يعني انهي فائل جي لائين نمبر 3 کي ختم ڪريو ، هتي جيڪڏهن اسان پريس داخل ڪندا اهو اسان کي ڏيکاريندو ته اسان ڇا چاهيون ٿا ، پر ٽرمينل ۾ ، انهي سان > ڊسٽورس-ڊيب- ٺيڪ. ٽيٽيڪس اسان اهو ظاهر ڪري رهيا آهيون ته نتيجو ٽرمينل ۾ ڏيکارڻ بدران ، اهو انهي نالي سان فائل ۾ رکجي.
ڇا سادو آهي؟
گڏو گڏ ، اسين استعمال ڪرڻ کان پاسو ڪري سگھون ٿا > ڊسٽورس-ڊيب- ٺيڪ. ٽيٽيڪس جو صحيح پيمراٽر استعمال ڪندي سيپيٽرول -i
اهو آهي ، جيڪڏهن اسان فائل تان لڪير ختم ڪرڻ چاهيون ٿا ۽ ساڳئي نالي سان محفوظ ڪرڻ چاهيون ٿا (۽ نه ڪنهن ٻي فائل ۾) ، بس پيرا ميٽر کي شامل ڪريو -i :
sed -i "3d" distros-deb.txt
اهو لائين # 3 distros-deb.txt مان هٽايو ۽ محفوظ ڪندو.
ڇا جيڪڏهن آئون لائينز جي حد چاهيان ٿو ، اهو آهي لڪير # 3 کي پڻ # 4 ۽ # 5 کي؟ انهي کي حاصل ڪرڻ لاءِ اسين حد 3 کان 5 تائين رکون ٿا ، يعني:
sed -i "3,5d" distros-deb.txt
۽ اهو صرف مون کي ڊيبين ۽ ڪوبنٽو will ڏيکاريندو
پوءِ ڇا جيڪڏهن آئون لائن 2 کان آخري لائينن کي حذف ڪرڻ چاهيان ٿو ، جڏهن ته آئون ڪل سٽون نٿو چاهيان؟
بس ڊالر جي نشان کي استعمال ڪريو - »$
sed -i "2,$d" distros-deb.txt
جيڪڏهن توهان پهريون نمبر # 4 کان ختم ڪرڻ چاهيندا آهيو ته اسان صرف شروعات ۾ قيمت 1 رکون ٿا.
sed -i "1,4d" distros-deb.txt
هي سڀ ڪجهه رهيو آهي ، هڪ تمام مفيد ٽپ آهي جڏهن توهان ڪم کي پاڻمرادو بڻائڻ لاءِ بش اسڪرپٽ ٺاهڻ چاهيو ٿا ۽ توهان کي ترتيب واري فائلن جي لائينن کي تبديل ۽ ختم ڪرڻ جي ضرورت آهي ، تبديل ڪرڻ لاءِ اسان استعمال ڪري سگهون ٿا. سي o پرو، انهي سان گڏ اسين ختم ڪرڻ لاءِ alreadyاڻون ٿا ته اهو ڪئين 😉
اقتباس سان جواب ڏيو
16 تبصرا ، پنھنجو ڇڏ
تمام سٺو حصو 😉
مهرباني
رستي ۾ ، اسان کي توهان جي ايميل ملي هئي هينئر آئون توهان جو جواب ڏيان ٿو 😀
اقتباس سان جواب ڏيو
ٽرمينل جي اعلي پادرين ، سرور ۽ سي ايس ڪنيڪشن جي ڪري مون وٽ آ ، او زبردست KZKG ^ Gaara ، ۽ مان توهان کان پڇان ٿو: جتي مان پنهنجي لاعلمي جي سطح تي سبق حاصل ڪري سگهان ٿو جيڪا مون کي ٻن ريموٽ مشينن جي وچ ۾ ايس ايس سي ڪنيڪشن استعمال ڪرڻ جي اجازت ڏي. مختلف نيٽ ورڪن تي ٽيڪسٽ فائلز ، پي ڊي ايف ، تصوير ۽ آواز شيئر ڪرڻ لاءِ (ايم پي 3)….
🙂
درحقيقت ، ڇا توهان ان سلسلي ۾ منهنجي رهنمائي ڪري سگهو ٿا ، مون وٽ ٻه مشينون آهن ، هڪ ڪم تي ۽ هڪ گهر ۾ ۽ مون کي انهن جي وچ ۾ هڪ ڪنيڪشن جي ضرورت آهي (ڇاڪاڻ ته جيئن مان هن کي سمجهان ٿو ، ايس ايڇ کي مشينن جي وچ ۾ شيئر ڪرڻ جي اجازت ڏي ، ڇا آئون صحيح آهيان؟ ).
۽ جيڪڏهن مان غلط آهيان ، توهان ڪهڙي درخواست ڏيو ٿا؟
۽ مان هن سلسلي ۾ هڪ بنيادي سبق ڪٿي ڳوليان؟
ايس پي.
scp صارف @ مشين_ ايڊريس: رستو استعمال ڪندڙ @ مشين_ ايڊريس: رستو.
ساڳيو نحو جيئن سي پي ، ذريعو -> منزل.
توهان انسان ڏيکاريا ، توهان وڃائي ويٺا.
سٺي صلاح
دلچسپ ٽپ… XD
ڇا توهان کي اهو toاڻڻ جو شوق ٿئي ٿو جيڪو بولڊ متن کي ٻاهر ڪ makesندو هجي؟
منهنجو مطلب آهي ، مون وٽ هڪ txt فائل آهي جيڪا هڪ لغت آهي ، ان ۾ 10000 کان وڌيڪ لائينون آهن ۽ آئون چاهيان ٿو ته اها “:” معطل ٿيڻ واري پوائنٽن کان اڳ ڪجهه متن کي اجاگر ڪري ۽ هڪ ڪري هڪڙي ڪرڻ تمام گهڻو هجي.
هيلو،
هڪ ٽيڪسٽ فائل سادي ٽيڪسٽ آهي ، جيئن نالي جو مطلب آهي ... سادي ، بغير شڪلن ۽ ڪجهه اهڙي ئي قسم سان ، آئون معذرت سان چوان ٿو پر منهنجو خيال آهي ته جيڪو توهان پڇو اهو نٿو ڪري سگهجي ، ڇا ٿي سگهي ٿو 🙁
اقتباس سان جواب ڏيو
اصل ۾ اهو ڪري سگهي ٿو ، پر توهان کي destinationاڻڻ گهرجي منزل جي شڪل.
مثال طور:
گونج $ (گونج "رابرٽ: هيلو. هتي تبديل ڪريو" | sed 's / \ ./. \\ e [40؛ 31m /؛ s / \: /: \\ e [40؛ 35m /')
اهو معاملو ڪرڻ جي ڳالهه آهي.
ختم ڪرڻ جو ٻيو طريقو جيڪو استعمال ٿي سگهي ٿو sed '/' $ 1 '/ d' پر توهان کي ٻيهر پڪ ٿيڻو پوندو.
پوءِ ان کي بچايو ختم ڪريو * .odt ۾
ڇا هتي ليبر آفيس سان گڏ ان جو آسان رستو نه آهي؟
ڇا توھان ھڪڙي لڪير جو حصو ختم ڪري ڇڏيو ۽ باقي ڇڏيو؟
اچو ته چوندا آهيون مان هڪ لفظ جي سامهون هر شي کي هڪ خاص قطار ۾ خارج ڪرڻ چاهيان ٿو.
يا هر شي کي ختم ڪريو جيڪو انهي لفظ جي پيروي ڪري ٿو.
ها ، اهو هڪ رججيس ڪ ofڻ وارو معاملو آهي (جيڪڏهن ضروري هجي ماڻهو sed -r ، –regexp-extended)
جيڪو مون لاتو ان کان شروع ڪيو
گونج «رابرٽ: هيلو. هتي تبديل ڪريو »| سود / تبديلي // '
چ definedيءَ ريت بيان ٿيل نموني سان ۽ سان. (هڪ ڪردار) ۽ * (هڪ کان وڌيڪ)
کان پوء
گونج «رابرٽ: هيلو. هتي تبديل ڪريو »| سود / تبديلي. * // '
کان اڳ:
گونج «رابرٽ: هيلو. هتي تبديل ڪريو »| sed /. * تبديل ڪريو // '
جيڪڏهن اهو معاملو ٿئي ٿو ته اهو لفظ ظاهر ٿئي ٿو
گونج «رابرٽ: هيلو. هتي تبديل ڪريو »| سود / تبديلي. * / تبديلي / '
يا وڌيڪ تفصيلي
قطار ۾ رابرٽ تي مشتمل آھي جيڪو تبديليءَ کان پوءِ وڃي ٿو
گونجيو «فريز: هيلو. هتي تبديل ڪريو \ n رابرٽ: هيلو. هتي تبديل ڪريو »| سل '/ روبرٽ / ايس / ڪيبيو.
يا وانگر شروع ۾ ٻئي لائن ڪ andي ۽ باقي پروسيس ڪري
گونج «فريز: هيلو. هتي تبديل ڪريو \ n رابرٽ: هيلو. هتي تبديل ڪريو \ n ٻيا »| sed -e 2d -e / تبديلي. * // '
گونج «فريز: هيلو. هتي تبديل ڪريو \ n رابرٽ: هيلو. هتي تبديل ڪريو \ n ٻيا »| sed '2d ؛ s / تبديلي. * //'
مهرباني ، اها منهنجي لاءِ تمام مفيد آهي.
سٺو مضمون ، انهن مان هڪڙو مون کي ، ڪيترو عظيم سيس ايڊمن!
ڇا به اسان جي زندگي سوين ، بڪ ، پرل ، گرپ ، دم ، سر ، ”ايماس“ ۽ ٻيا ڪيترائي ضروري اوزار کانسواءِ نه هوندي!
مهرباني ، اهو تمام مددگار هو.
هيلو ، ۽ توهان هڪ ئي حڪم ۾ فائل مان 1,4،10 ۽ XNUMX کي ڪئين لڪائي سگهو ٿا؟