အကောင်းဆုံးအဖြေ- Unix ရှိ စာကြောင်းအသစ်ဖြင့် ဖိုင်တစ်ခုတွင် nth line ကို သင်မည်သို့ အစားထိုးမည်နည်း။

မာတိကာ

UNIX ဖိုင်သို့ စာကြောင်းအသစ်တစ်ခုကို မည်သို့ထည့်ရမည်နည်း။

ငါ့ကိစ္စတွင်၊ ဖိုင်သည် newline ပျောက်နေပါက wc command သည် တန်ဖိုး 2 ကိုပြန်ပေးကာ လိုင်းအသစ်တစ်ခုရေးပါ။ လိုင်းအသစ်များထည့်လိုသော လမ်းကြောင်းအတွင်း ၎င်းကို လုပ်ဆောင်ပါ။ ပဲ့တင်သံ $” >> ထည့်မယ်။ ဖိုင်၏အဆုံးအထိ အလွတ်လိုင်းတစ်ခု။ ပဲ့တင်သံ $'nn' >> ဖိုင်အဆုံးတွင် ဗလာ 3 ကြောင်းထည့်ပါမည်။

bash ဖြင့် ဖိုင်တစ်ခုရှိ စာကြောင်းတစ်ခုကို မည်သို့အစားထိုးရမည်နည်း။

ဖိုင်တစ်ခုအတွင်းရှိ အကြောင်းအရာကို အစားထိုးရန်၊ သင်သည် သီးခြားဖိုင်စာကြောင်းကို ရှာဖွေရပါမည်။ 'sed' အမိန့် bash script ကို အသုံးပြု၍ ဖိုင်ရှိ မည်သည့်စာကြောင်းကိုမဆို အစားထိုးရန် အသုံးပြုသည်။ bash ဖြင့် ဖိုင်တစ်ခု၏ အကြောင်းအရာကို အစားထိုးရန် ဤအမိန့်ကို နည်းလမ်းအမျိုးမျိုးဖြင့် အသုံးပြုနိုင်သည်။ ဖိုင်တစ်ခုရှိ စာကြောင်းကို အစားထိုးရန် 'awk' အမိန့်ကိုလည်း သုံးနိုင်သည်။

Unix တွင် nth line ကိုသင်မည်သို့ဖယ်ရှားမည်နည်း။

အရင်းအမြစ်ဖိုင်ကိုယ်တိုင်မှ လိုင်းများကို ဖယ်ရှားရန်၊ အသုံးပြုပါ။ sed အမိန့်ဖြင့် -i ရွေးချယ်မှု. မူရင်းအရင်းအမြစ်ဖိုင်မှလိုင်းများကိုမဖျက်လိုပါက sed command ၏ output ကိုအခြားဖိုင်သို့ပြန်ညွှန်းနိုင်သည်။

Linux ရှိ ဖိုင်တစ်ခုရှိ လိုင်းတစ်ခုကို သင်မည်သို့ပြောင်းလဲမည်နည်း။

sed ကို အသုံးပြု၍ Linux/Unix အောက်ရှိ ဖိုင်များတွင် စာသားပြောင်းရန် လုပ်ထုံးလုပ်နည်း။

  1. အောက်ပါအတိုင်း Stream Editor (sed) ကို အသုံးပြုပါ။
  2. sed -i 's/old-text/new-text/g' ထည့်သွင်းခြင်း။ …
  3. s သည် ရှာဖွေပြီး အစားထိုးရန်အတွက် sed ၏ အစားထိုး command ဖြစ်သည်။
  4. ၎င်းသည် 'စာသားဟောင်း' ၏ဖြစ်ပျက်မှုအားလုံးကိုရှာရန် sed ကိုပြောပြီး input ဟုအမည်ပေးထားသောဖိုင်တစ်ခုရှိ 'စာသားအသစ်' ဖြင့်အစားထိုးရန်ပြောထားသည်။

awk script ဆိုတာဘာလဲ။

Awk သည် ဒေတာကို ကိုင်တွယ်ခြင်းနှင့် အစီရင်ခံစာများထုတ်ပေးခြင်းအတွက် အသုံးပြုသည့် scripting language တစ်ခု. awk command programming language သည် compiling မလိုအပ်ဘဲ အသုံးပြုသူကို variables များ၊ numeric functions များ၊ string functions များနှင့် logical operators များကို အသုံးပြုခွင့်ပေးသည်။

ဖိုင်တစ်ခုသို့ လိုင်းအသစ်တစ်ခုကို မည်သို့ထည့်ရမည်နည်း။

ဖိုင်ကိုသုံးပါ။ write() ဖိုင်တစ်ခုသို့ လိုင်းအသစ်တစ်ခုကို ထပ်ထည့်ပါ။

  1. new_line = “ဤလိုင်းအသစ်ကို ထပ်ထည့်ပါမည်။n”
  2. a_file အဖြစ် open(“sample.txt”၊ “a”) ဖြင့်
  3. a_file။ write("n")
  4. a_file။ ရေးပါ (လိုင်းအသစ်)

terminal မှာ လိုင်းအသစ်တစ်ခုကို ဘယ်လိုဖန်တီးမလဲ။

ကုဒ်အရှည်ကြီးရိုက်ပြီး လှပသောအကြောင်းပြချက်ဖြင့် ကွဲချင်ပါက shift + enter ကိုနှိပ်ခြင်းဖြင့် စကားပြန်မှ သင့်အား … prompt ဖြင့် စာကြောင်းအသစ်တစ်ခုဆီသို့ ခေါ်ဆောင်သွားစေလိုပါသည်။

Unix တွင် စာကြောင်းအသစ်ကို သင်မည်ကဲ့သို့ ပရင့်ထုတ်မည်နည်း။

4 အဖြေများ။ အဲဒါကတော့၊ အငြင်းအခုံမရှိဘဲ ပဲ့တင်သံ စာကြောင်းအလွတ်တစ်ခုကို print ထုတ်ပါလိမ့်မယ်။ ၎င်းသည် POSIX လိုက်လျောညီထွေမဟုတ်သော်လည်း၊ ၎င်းသည် စနစ်များစွာတွင် ပို၍ယုံကြည်စိတ်ချစွာအလုပ်လုပ်သည်။ printf သည် ပဲ့တင်သံကဲ့သို့ အလိုအလျောက်လိုင်းအသစ်ကို ထပ်မထည့်သောကြောင့် အဆုံးတွင် သင်ကိုယ်တိုင်ထည့်ရမည်ကို သတိပြုပါ။

Python ကို အသုံးပြု၍ ဖိုင်တစ်ခုအတွင်းရှိ စာကြောင်းတစ်ခုကို သင်မည်သို့ အစားထိုးမည်နည်း။

Python ရှိ ဖိုင်တစ်ခုတွင် လိုင်းတစ်ခုကို အစားထိုးပါ။

  1. Python ရှိ ဖိုင်တစ်ခုတွင် လိုင်းတစ်ခုကို အစားထိုးရန် replace() Function နှင့်အတူ Loop အတွက်ကို အသုံးပြုပါ။
  2. ပြန်လည်ဆန်းသစ်ထားသော အကြောင်းအရာများဖြင့် ဖိုင်အသစ်တစ်ခုကို ဖန်တီးပြီး Python တွင် မူရင်းဖိုင်ကို အစားထိုးပါ။
  3. Python ရှိ စာကြောင်းတစ်ခုအတွင်း စာသားကို အစားထိုးရန်အတွက် fileinput.input() လုပ်ဆောင်ချက်ကို အသုံးပြုပါ။

SED ဖြင့် ဖိုင်တစ်ခုရှိ လိုင်းတစ်ခုကို သင်မည်သို့ပြောင်းမည်နည်း။

အဖွေ

  1. သင်ပြောင်းလဲလိုသောဖိုင်ကိုပြသပါ။ # cat ဖိုင်အမည် 1234 5678 9123 4567။
  2. လိုင်း 2 ကို သင်၏ စာလုံးအသစ်သို့ ပြောင်းပါ။ ဤဥပမာသည် “1111” ကို အသုံးပြုထားသည်။ # sed “2s/5678/1111/1” ဖိုင်အမည် 1234 1111 9123 4567။

Linux တွင် ဖိုင်တစ်ခုကို မည်သို့ overwrite လုပ်သနည်း။

အများအားဖြင့်, cp command ကို run သောအခါ၎င်းသည် ပြထားသည့်အတိုင်း ဦးတည်ရာ ဖိုင်(များ) သို့မဟုတ် လမ်းညွှန်ကို ထပ်ရေးသည်။ အပြန်အလှန်အကျိုးသက်ရောက်မှုမုဒ်တွင် cp ကို run ရန် ၎င်းသည် သင့်အား ရှိပြီးသားဖိုင် သို့မဟုတ် လမ်းညွှန်တစ်ခုအား ထပ်မရေးမီ သတိပေးရန်အတွက်၊ ပြထားသည့်အတိုင်း -i အလံကို အသုံးပြုပါ။

Unix ရှိ ပထမ 10 လိုင်းကို ဘယ်လိုဖယ်ရှားရမလဲ။

unix command line ရှိ ဖိုင်တစ်ခု၏ ပထမဆုံး N လိုင်းများကို ဖယ်ရှားပါ။

  1. sed -i နှင့် gawk v4.1 -i -inplace ရွေးချယ်မှုများသည် အခြေခံအားဖြင့် မြင်ကွင်းနောက်ကွယ်တွင် temp ဖိုင်ကို ဖန်တီးနေသည်။ IMO sed သည် အမြီးနှင့် awk ထက် ပိုမြန်သင့်သည်။ –…
  2. အမြီးသည် sed သို့မဟုတ် awk ထက် ဤလုပ်ငန်းအတွက် အဆများစွာ ပိုမြန်သည်။ (

Unix ရှိ နောက်ဆုံး 10 လိုင်းကို ဘယ်လိုဖယ်ရှားရမလဲ။

အဝိုင်းနည်းနည်းရှိပေမယ့် လိုက်ရတာ လွယ်မယ်ထင်တယ်။

  1. ပင်မဖိုင်ရှိ လိုင်းအရေအတွက်ကို ရေတွက်ပါ။
  2. ရေတွက်မှုမှ ဖယ်ရှားလိုသော လိုင်းအရေအတွက်ကို နုတ်ပါ။
  3. သင်သိမ်းဆည်းလိုသော လိုင်းအရေအတွက်ကို ပရင့်ထုတ်ပြီး temp ဖိုင်တွင် သိမ်းဆည်းပါ။
  4. ပင်မဖိုင်ကို temp ဖိုင်ဖြင့် အစားထိုးပါ။
  5. Temp ဖိုင်ကို ဖယ်ရှားပါ။

Unix ရှိ ပထမစာကြောင်းကို ဘယ်လိုဖယ်ရှားရမလဲ။

အသုံးပြုခြင်း sed အမိန့်

sed command ကိုအသုံးပြုပြီး input file တစ်ခုမှပထမစာကြောင်းကိုဖယ်ရှားခြင်းသည်အလွန်ရိုးရှင်းသည်။ အထက်ဖော်ပြပါ ဥပမာရှိ sed command သည် နားလည်ရန် မခက်ခဲပါ။ ကန့်သတ်ချက် '1d' သည် လိုင်းနံပါတ် '1' တွင် 'd' (ဖျက်) လုပ်ဆောင်ချက်ကို အသုံးပြုရန် sed အမိန့်ကို ပြောပြသည်။

ဒီပို့စ်ကိုကြိုက်လား။ ကျေးဇူးပြု၍ သင်၏မိတ်ဆွေများကိုမျှဝေပါ။
OS ယနေ့