9 Linux အတွက် အကောင်းဆုံး ဖိုင်နှိုင်းယှဉ်ခြင်းနှင့် ကွာခြားချက် (Diff) ကိရိယာများ


ပရိုဂရမ်ဖိုင်များ သို့မဟုတ် ပုံမှန်စာသားဖိုင်များကို ရေးသားနေစဉ်၊ ပရိုဂရမ်မာများနှင့် စာရေးဆရာများသည် တစ်ခါတစ်ရံတွင် ဖိုင်နှစ်ခု သို့မဟုတ် တူညီသောဖိုင်ဗားရှင်းနှစ်ခုကြား ကွာခြားချက်ကို သိရှိလိုကြသည်။ Linux ရှိ ကွန်ပြူတာဖိုင်နှစ်ခုကို နှိုင်းယှဉ်ကြည့်သောအခါ၊ ၎င်းတို့၏ အကြောင်းအရာများကြား ကွာခြားချက်ကို diff ဟုခေါ်သည်။ ဤဖော်ပြချက်သည် လူသိများသော Unix command-line file comparison utility ဖြစ်သော diff ၏ အထွက်ကို ရည်ညွှန်းချက်တစ်ခုမှ မွေးဖွားလာခြင်းဖြစ်သည်။

Linux တွင် သင်အသုံးပြုနိုင်သည့် ဖိုင်နှိုင်းယှဉ်ခြင်းကိရိယာများစွာရှိပြီး၊ ဤသုံးသပ်ချက်တွင်၊ ကုဒ် သို့မဟုတ် အခြားစာသားဖိုင်များကိုရေးနေစဉ်တွင် သင်အသုံးပြုနိုင်သည့် အကောင်းဆုံး terminal နှင့် GUI ကွဲပြားသည့်ကိရိယာအချို့ကို ကျွန်ုပ်တို့ကြည့်ရှုပါမည်။

1. diff Command

ကွန်ပြူတာဖိုင်နှစ်ခုကြားက ကွာခြားချက်ကို ပြသတဲ့ မူရင်း Unix command-line tool နဲ့ စတင်ရတာကို နှစ်သက်ပါတယ်။ Diff သည် ရိုးရှင်းပြီး အသုံးပြုရလွယ်ကူသည်၊ ၎င်းကို Linux ဖြန့်ဖြူးမှုအများစုတွင် ကြိုတင်ထည့်သွင်းထားသည်။ ၎င်းသည် ဖိုင်များကို မျဉ်းကြောင်းတစ်ခုချင်း နှိုင်းယှဉ်ကာ ၎င်းတို့ကြားရှိ ကွာခြားချက်ကို ထုတ်ပေးသည်။

၎င်းကိုအလွယ်တကူအသုံးပြုရန် diff အတွက် manual entry ကိုသင်စစ်ဆေးနိုင်သည်။

# man diff

၎င်း၏လုပ်ဆောင်နိုင်စွမ်းကို မြှင့်တင်ပေးသည့် diff tool အတွက် wrappers အချို့ရှိပြီး ၎င်းတို့တွင်-

Colordiff သည် diff နှင့် တူညီသော output ကိုထုတ်ပေးသည့် Perl script တစ်ခုဖြစ်ပြီး အရောင်နှင့် syntax ကို မီးမောင်းထိုးပြထားသည်။ ၎င်းတွင် စိတ်ကြိုက်ပြင်ဆင်နိုင်သော အရောင်အသွေးအစီအစဥ်များ ပါရှိသည်။

ပုံတွင်ပြထားသည့်အတိုင်း apt-get ဟုခေါ်သော မူရင်းပက်ကေ့ဂျ်မန်နေဂျာတူးလ်များကို အသုံးပြု၍ Colordiff ကို သင်၏ Linux စနစ်များတွင် ထည့်သွင်းနိုင်သည်။

# yum install colordiff             [On CentOS/RHEL/Fedora]
# dnf install colordiff             [On Fedora 23+ version]
$ sudo apt-get install colordiff    [On Debian/Ubuntu/Mint]

ပုံတွင်ပြထားသည့်အတိုင်း Colordiff အတွက် manual entry ကို သင်စစ်ဆေးနိုင်ပါသည်။

# man colordiff

wdiff utility သည် စာလုံးတစ်လုံးချင်းအလိုက် ဖိုင်များကို နှိုင်းယှဉ်ရန် အသုံးပြုသည့် ရှေ့ဆုံးမှ diff command ဖြစ်သည်။ ပြောင်းလဲထားသော စကားလုံးများအတွက် စာသားနှစ်ခုကို နှိုင်းယှဉ်ပြီး မည်သည့်စာပိုဒ်ကို ပြန်လည်ဖြည့်ထားသောအခါတွင် ဤပရိုဂရမ်သည် အလွန်အသုံးဝင်ပါသည်။

သင်၏ Linux စနစ်များတွင် wdiff ကို ထည့်သွင်းရန်၊ လုပ်ဆောင်ရန်-

# yum install wdiff             [On CentOS/RHEL/Fedora]
# dnf install wdiff             [On Fedora 23+ version]
$ sudo apt-get install wdiff    [On Debian/Ubuntu/Mint]

Linux တွင်အသုံးပြုနည်းအတွက် wdiff manual ကိုသုံးပါ။

# man wdiff

2. Vimdiff Command

Vimdiff သည် ကွဲပြားသော utility နှင့် နှိုင်းယှဉ်လျှင် အဆင့်မြင့်ပုံစံဖြင့် အလုပ်လုပ်သည်။ ၎င်းသည် အသုံးပြုသူတစ်ဦးအား ၎င်းတို့၏ကွဲပြားမှုများကိုပြသနေစဉ် ဖိုင်ဗားရှင်းလေးခုအထိ တည်းဖြတ်နိုင်စေပါသည်။ သင် ၎င်းကို run သောအခါ Vimdiff သည် vim text editor ကို အသုံးပြု၍ ဖိုင်နှစ်ခု သို့မဟုတ် သုံးခု သို့မဟုတ် လေးခုကိုဖွင့်သည်။

ပင်မစာမျက်နှာ- http://vimdoc.sourceforge.net/htmldoc/diff.html သို့ ဝင်ကြည့်ပါ။

ကျောင်းမတူကွဲပြားသည့်ကိရိယာအဟောင်းများကိုကြည့်ရှုပြီး Linux တွင်ရရှိနိုင်သော GUI ကွဲပြားသည့်ကိရိယာအချို့သို့ အမြန်ရွှေ့ကြပါစို့။

3. Kompare

Kompare သည် အသုံးပြုသူများအား ဖိုင်များကြား ကွဲပြားမှုများကို ကြည့်ရှုနိုင်ပြီး ၎င်းတို့ကို ပေါင်းစည်းရန် ခွင့်ပြုသည့် ကွဲပြားသည့် GUI ထုပ်ပိုးမှုတစ်ခုဖြစ်သည်။

၎င်း၏အင်္ဂါရပ်အချို့ပါဝင်သည်-

  1. မျိုးစုံကွဲပြားသော ဖော်မတ်များကို ပံ့ပိုးပေးသည်
  2. လမ်းညွှန်များ နှိုင်းယှဉ်မှုကို ပံ့ပိုးသည်
  3. ကွဲပြားသောဖိုင်များကိုဖတ်ရှုခြင်းကို ပံ့ပိုးပေးသည်
  4. စိတ်ကြိုက်ပြင်ဆင်နိုင်သော အင်တာဖေ့စ်
  5. အရင်းအမြစ်ဖိုင်များတွင် ဖာထေးမှုများကို ဖန်တီးခြင်းနှင့် အသုံးပြုခြင်း

ပင်မစာမျက်နှာ- https://www.kde.org/applications/development/kompare/ ဝင်ရောက်ကြည့်ရှုပါ။

4. DiffMerge

DiffMerge သည် ဖိုင်များကို နှိုင်းယှဉ်ခြင်းနှင့် ပေါင်းစည်းခြင်းအတွက် cross-platform GUI အပလီကေးရှင်းတစ်ခုဖြစ်သည်။ ၎င်းတွင် ဖိုင်နှစ်ခုကြား ခြားနားချက်ကို ပြသသည့် လုပ်ဆောင်ချက်အင်ဂျင် နှစ်ခု၊ Diff engine သည် အတွင်းလိုင်းကို အသားပေးဖော်ပြခြင်းနှင့် တည်းဖြတ်ခြင်းတို့ကို ပံ့ပိုးပေးသည့် ဖိုင်သုံးခုကြားတွင် ပြောင်းလဲထားသော လိုင်းများကို ထုတ်ပေးသည့် ပေါင်းစည်းခြင်းအင်ဂျင်တစ်ခု ဖြစ်သည်။

၎င်းတွင်အောက်ပါအင်္ဂါရပ်များပါရှိသည်။

  1. လမ်းညွှန်နှိုင်းယှဉ်မှုကို ပံ့ပိုးသည်
  2. ဖိုင်ဘရောက်ဆာ ပေါင်းစပ်မှု
  3. အလွန်ပြင်ဆင်သတ်မှတ်နိုင်သော

ပင်မစာမျက်နှာကို ဝင်ကြည့်ပါ- https://sourcegear.com/diffmerge/

5. Meld – Diff Tool

Meld သည် ပေါ့ပါးသော GUI ကွဲပြားမှုနှင့် ပေါင်းစည်းသည့်ကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည် အသုံးပြုသူများအား ဖိုင်များ၊ လမ်းညွှန်များ နှင့် ဗားရှင်းထိန်းချုပ်ထားသော ပရိုဂရမ်များကို နှိုင်းယှဉ်နိုင်သည်။ developer များအတွက် အထူးတည်ဆောက်ထားပြီး၊ ၎င်းသည် အောက်ပါအင်္ဂါရပ်များဖြင့် ပါရှိသည်။

  1. ဖိုင်များနှင့် လမ်းညွှန်များကို နှစ်လမ်းနှင့် သုံးလမ်း နှိုင်းယှဉ်ခြင်း
  2. အသုံးပြုသူများသည် စကားလုံးများကို ပိုမိုအမျိုးအစားများအဖြစ် ဖိုင်နှိုင်းယှဉ်မှုကို အပ်ဒိတ်လုပ်ခြင်း
  3. ပြောင်းလဲထားသော ဘလောက်များပေါ်တွင် အလိုအလျောက်ပေါင်းစည်းခြင်းမုဒ်နှင့် လုပ်ဆောင်ချက်များကို အသုံးပြု၍ ပေါင်းစည်းခြင်းကို ပိုမိုလွယ်ကူစေသည်
  4. မြင်ယောင်ပုံဖော်မှုများကို အသုံးပြု၍ လွယ်ကူသော နှိုင်းယှဉ်မှုများ
  5. Git၊ Mercurial၊ Subversion၊ Bazaar နှင့် အခြားများစွာကို ပံ့ပိုးပေးသည်

ပင်မစာမျက်နှာ- http://meldmerge.org/ သွားရောက်ကြည့်ရှုပါ။

6. Diffuse – GUI Diff Tool

Diffuse သည် Linux တွင် သင်သုံးနိုင်သော လူကြိုက်များသော၊ အခမဲ့၊ သေးငယ်ပြီး ရိုးရှင်းသော GUI diff and merge tool ဖြစ်သည်။ Python တွင်ရေးသားထားသော၊ ၎င်းတွင်အဓိကလုပ်ဆောင်နိုင်စွမ်းနှစ်ခုပါရှိသည်၊ ဆိုလိုသည်မှာဖိုင်နှိုင်းယှဉ်ခြင်းနှင့်ဗားရှင်းထိန်းချုပ်ခြင်း၊ ဖိုင်တည်းဖြတ်ခြင်း၊ ဖိုင်များပေါင်းစည်းခြင်းနှင့်ဖိုင်များအကြားခြားနားချက်ကိုထုတ်ပေးနိုင်သည်။

မောက်စ်ညွှန်ကိရိယာကို အသုံးပြု၍ ဖိုင်များတွင် စာသားမျဉ်းကြောင်းများကို နှိုင်းယှဉ်ကြည့်နိုင်သည်၊ ကပ်လျက်ဖိုင်များတွင် စာကြောင်းများကို ယှဉ်တွဲကာ မတူညီသောဖိုင်ကို တည်းဖြတ်နိုင်သည်။ အခြားအင်္ဂါရပ်များပါဝင်သည်-

  1. အထားအသိုကို အသားပေးဖော်ပြခြင်း
  2. သွားလာရလွယ်ကူစေရန် ကီးဘုတ်ဖြတ်လမ်းများ
  3. အကန့်အသတ်မရှိ ပြန်ပြင်ခြင်းကို ပံ့ပိုးသည်
  4. ယူနီကုဒ် ပံ့ပိုးမှု
  5. Git၊ CVS၊ Darcs၊ Mercurial၊ RCS၊ အဖျက်အမှောင့်၊ SVK နှင့် Monotone ကို ပံ့ပိုးသည်

ပင်မစာမျက်နှာကို ဝင်ကြည့်ပါ- http://diffuse.sourceforge.net/

7. XXdiff – Diff and Merge Tool

XXdiff သည် Linux၊ Solaris၊ HP/UX၊ IRIX၊ DEC Tru64 ကဲ့သို့သော Unix ကဲ့သို့သော လည်ပတ်မှုစနစ်များကဲ့သို့ Unix တွင်အလုပ်လုပ်သော အခမဲ့၊ အစွမ်းထက်သော ဖိုင်နှင့်လမ်းညွှန်ကို ပေါင်းစည်းသည့်ကိရိယာတစ်ခုဖြစ်သည်။ XXdiff ၏ ကန့်သတ်ချက်တစ်ခုမှာ unicode ဖိုင်များနှင့် diff ဖိုင်များ၏ inline တည်းဖြတ်မှု အားနည်းခြင်းပင်ဖြစ်သည်။

၎င်းတွင် အောက်ပါအင်္ဂါရပ်များစာရင်းပါရှိသည်။

  1. ဖိုင်နှစ်ခု၊ ဖိုင်သုံးဖိုင် သို့မဟုတ် လမ်းညွှန်နှစ်ခု၏ အတိမ်အနက်နှင့် ထပ်တလဲလဲ နှိုင်းယှဉ်မှု
  2. အလျားလိုက် ခြားနားချက်ကို မီးမောင်းထိုးပြခြင်း
  3. ဖိုင်များ အပြန်အလှန် ပေါင်းစည်းခြင်းနှင့် ရလဒ်ထွက်ရှိမှုကို သိမ်းဆည်းခြင်း
  4. ပြန်လည်သုံးသပ်ခြင်း/ရဲတပ်ဖွဲ့ကို ပေါင်းစည်းခြင်းကို ပံ့ပိုးသည်
  5. GNU diff၊ SIG diff၊ Cleareddiff နှင့် အခြားများစွာသော အခြားအရာများကဲ့သို့သော ပြင်ပ diff ကိရိယာများကို ပံ့ပိုးပေးသည်
  6. စခရစ်များကို အသုံးပြု၍ ချဲ့ထွင်နိုင်သည်
  7. အရင်းအမြစ်ဖိုင်အပြင် အခြားအသေးစားအင်္ဂါရပ်များစွာကို အသုံးပြု၍ အပြည့်အဝ စိတ်ကြိုက်ပြင်ဆင်နိုင်သည်

ပင်မစာမျက်နှာကို ဝင်ကြည့်ပါ- http://furius.ca/xxdiff/

8. KDiff3 – – Diff and Merge Tool

KDiff3 သည် KDevelop မှပြုလုပ်ထားသော နောက်ထပ်အမိုက်စား၊ ကွဲပြားသော ပလပ်ဖောင်းနှင့် ပေါင်းစည်းခြင်းတူးလ်ဖြစ်သည်။ ၎င်းသည် Linux နှင့် Mac OS X၊ Windows အပါအဝင် Unix ကဲ့သို့သော ပလပ်ဖောင်းများအားလုံးတွင် အလုပ်လုပ်သည်။

၎င်းသည် ဖိုင် သို့မဟုတ် လမ်းညွှန်နှစ်ခုမှ သုံးခုကို နှိုင်းယှဉ် သို့မဟုတ် ပေါင်းစည်းနိုင်ပြီး အောက်ဖော်ပြပါ ထင်ရှားသောအင်္ဂါရပ်များပါရှိသည်။

  1. စာကြောင်းတစ်ကြောင်းပြီးတစ်ကြောင်းနှင့် အက္ခရာအလိုက် ကွဲပြားမှုများကို ညွှန်ပြသည်
  2. အလိုအလျောက်ပေါင်းစည်းခြင်းကို ပံ့ပိုးသည်
  3. ပေါင်းစပ်-ပဋိပက္ခများကို ကိုင်တွယ်ဖြေရှင်းရန် တည်ဆောက်ထားသည့် တည်းဖြတ်သူ
  4. ယူနီကုဒ်၊ UTF-8 နှင့် အခြားကုဒ်ဒစ်များစွာကို ပံ့ပိုးပေးသည်
  5. ကွဲပြားမှုများကို ပုံနှိပ်ခြင်းကို ခွင့်ပြုသည်
  6. Windows explorer ပေါင်းစည်းမှု ပံ့ပိုးမှု
  7. ဘိုက်-အမှာစာ-အမှတ်အသား “BOM”
  8. မှတစ်ဆင့် အလိုအလျောက် သိရှိခြင်းကိုလည်း ပံ့ပိုးပေးပါသည်။
  9. လိုင်းများ၏ ကိုယ်တိုင် ချိန်ညှိမှုကို ပံ့ပိုးပေးသည်
  10. အလိုလိုသိနိုင်သော GUI နှင့် အခြားအရာများစွာ

ပင်မစာမျက်နှာကို ဝင်ကြည့်ပါ- http://kdiff3.sourceforge.net/

9. TkDiff

TkDiff သည် Unix diff tool အတွက် အသုံးပြုရလွယ်ကူသော GUI wrapper ဖြတ်ကျော်ပလပ်ဖောင်းတစ်ခုလည်းဖြစ်သည်။ ၎င်းသည် input ဖိုင်နှစ်ခုကြားရှိခြားနားချက်များကို ဘေးချင်းကပ်ကြည့်ရှုခြင်းကို ပေးဆောင်သည်။ ၎င်းသည် Linux၊ Windows နှင့် Mac OS X တွင် လုပ်ဆောင်နိုင်သည်။

ထို့အပြင်၊ လွယ်ကူလျင်မြန်စွာ သွားလာနိုင်ရန် အတွက် မတူညီသော မှတ်သားဖွယ်ရာ ဂရပ်ဖစ်မြေပုံများ အပါအဝင် အခြား စိတ်လှုပ်ရှားဖွယ်ရာ အင်္ဂါရပ်အချို့ ပါရှိပါသည်။

ပင်မစာမျက်နှာကို ဝင်ကြည့်ပါ- https://sourceforge.net/projects/tkdiff/

အကောင်းဆုံး ဖိုင်နှင့် လမ်းညွှန် နှိုင်းယှဉ်ချက်နှင့် ပေါင်းစည်းသည့် ကိရိယာအချို့၏ ဤသုံးသပ်ချက်ကို ဖတ်ပြီးသည်နှင့် ၎င်းတို့ထဲမှ အချို့ကို သင်စမ်းကြည့်ချင်ပေမည်။ ၎င်းတို့သည် Linux တွင် သင်ရှာတွေ့နိုင်သော တစ်ခုတည်းသော diff tools များမဟုတ်နိုင်သော်လည်း ၎င်းတို့သည် အကောင်းဆုံးသောအင်္ဂါရပ်အချို့ကို ပေးဆောင်သည်ကို သိရှိကြပြီး၊ သင်စမ်းသပ်ပြီးဖြစ်ထိုက်သည်ဟု ယူဆထားသည့် အခြားသော diff tools များအကြောင်းလည်း ကျွန်ုပ်တို့အား အသိပေးလိုနိုင်ပါသည်။ အကောင်းဆုံးတို့တွင် ဖော်ပြခဲ့သည်။