Reading Man Page

September 2 2015

Unix/Linux Admin တစ်ယောက်အနေနဲ့ ရပ်တည်ဖို့ဆိုလျှင် Terminal နဲ့ Command တွေကိုကောင်းကောင်းသုံးတတ်ဖို့လိုတယ်ဆိုတာ အားလုံးသိကြမှာပါ။ သို့ပေမယ့် အရှိန်အဟုန်နဲ့ တိုးတက်နေတဲ့ နည်းပညာခေတ်ကြီးမှာ အသစ်ထွက်သမျှ Program တွေ၊ အဲဒီ Program တွေရဲ့ Command တွေကို အကုန်သိ၊ အကုန်မှတ်မိနေဖို့ဆိုတာ ခက်ခဲလွန်းပါတယ်။ အလွတ်ကျက်ပြီး မှတ်ထားတယ်ဆိုလျှင်တောင်မှ နောင်ထွက်လာတဲ့ Version အသစ်မှာ Option တွေ Usage တွေ ပြောင်းသွားနိုင်ပါတယ်။ အဲဒီအခါမျိုးကျ ပြန်လည်မှတ်သားဖို့လိုပါလိမ့်မယ်။ အလွယ်ဆုံးနဲ့ အမြန်ဆုံး လေ့လာနိုင်မယ့်နည်းလမ်းကတော့ Man Page လို့ခေါ်တဲ့ Manual Page ပါပဲ။

Man Page တနည်းအားဖြင့် man ဆိုတဲ့ command ကို Unix/Linux Distro တိုင်းလိုလိုမှာ Install လုပ်လိုက်တာနဲ့ တခါတည်း ပါဝင်လာပြီးသားပါ။ man ရဲ့ အဓိကလုပ်ဆောင်ချက်ကတော့ Developer တွေ သူတို့ Program တွေနဲ့ တပါတည်း ရေးသားပြစုထည့်သွင်းပေးလိုက်တဲ့ Documentation ဖိုင်တွေကို ထုတ်ယူဖော်ပြပေးတာပါပဲ။ ဒီလို Program တွေ Command တွေအတွက် Documentation တွေပြုလုပ်တဲ့နေရာမှာ စံအနေနဲ့ အကြောင်းအရာအလိုက် Section Number ခွဲခြားသတ်မှတ်ပေးထားတာရှိပါတယ်။ အဲဒါတွေကတော့ -

  • 1 – Executable Programs or Commands
  • 2 – System calls (Kernel မှ ထောက်ပံ့ပေးထားသော Function များ)
  • 3 – Library calls (Library မှ ထောက်ပံ့ပေးထားသော Function များ)
  • 4 – Drivers and Special files (အထူးသဖြင့် /dev Directory အောက်တွင်ရှိသော Device များ)
  • 5 – File Formats and Conventions (Configuration Files)
  • 6 – Games
  • 7 – Miscellaneous
  • 8 – System Administration Commands

တို့ပဲဖြစ်ပါတယ်။ ဒီ Section Number တွေရဲ့ Defination အလိုက် Man Page တွေကို ခွဲခြားရေးသားထားတာဖြစ်တဲ့အတွက် မိမိသိလိုတဲ့ အပိုင်းကို အလွယ်တကူ ထုတ်နှုတ် ဖတ်ရှုနိုင်မှာဖြစ်ပါတယ်။

Using Man Command

Command တစ်ခုခုရဲ့ Manual ကို ဖတ်မယ်ဆိုလျှင် မိမိသိလိုတဲ့ command ရဲ့ရှေ့မှာ man ဆိုတဲ့ command ထည့်ပြီးရိုက်လိုက်ရုံပါပဲ။ ဥပမာအနေနဲ့ passwd ဆိုတဲ့ command ရဲ့ manual ကိုဖတ်ချင်တယ်ဆိုလျှင် -

$ man passwd

ဆိုတဲ့ Command လေးရိုက်လိုက်ရုံပါပဲ။ ပုံမှာပြထားတဲ့အတိုင်း passwd ရဲ့ Man Page ကိုမြင်ရပါလိမ့်မယ်။

man-passwd

Man Page ရဲ့ ပထမဆုံးစာကြောင်းမှာတွေ့ရတဲ့ PASSWD(1) ဆိုတာကတော့ passwd command ရဲ့ Man Page တွေထဲကမှ Section 1 ဖြစ်တဲ့ Command အကြောင်းကို အဓိကထားရေးသားထားသော Page ဆိုတာကို ဖေါ်ပြထားခြင်းဖြစ်ပါတယ်။ တွေ့ရမယ့် အကြောင်းအရာတွေကတော့ Command ရဲ့ နာမည်အပြည့်အစုံ၊ ရေးသားရတဲ့ပုံစံ၊ ဘာတွေလုပ်ပေးနိုင်တယ်၊ နောက်ပြီး ချဲ့ထွင်အသုံးပြုနိုင်ဖို့ ဘယ်လို Option တွေပါတယ် ဆိုတာတွေကို အသေးစိပ်ရှင်းပြထားတာတွေပဲဖြစ်ပါတယ်။

ရှင်းလင်းချက် အနည်းအများပေါ်မူတည်ပြီး Terminal Screen ထဲမှာ အပြည့်အစုံမြင်ရချင်မှမြင်ရပါလိမ့်မယ်။ အဲဒီအတွက် Up Arrow, Down Arrow Key တွေအသုံးပြုပြီး Page ကို စာကြောင်းတစ်ကြောင်းချင်း အပေါ်၊အောက် Scroll လုပ်လို့ရပါတယ်။ နောက်ပြီး Vim Text Editor မှာလို J နဲ့ K ကိုအသုံးပြုပြီးတော့လည်း Scroll လုပ်နိုင်ပါသေးတယ်။ တစ်ကြောင်းချင်း Scroll လုပ်ရတာ ကြာတယ်ထင်လျှင် F (forward), B (backward) Key တွေအသုံးပြုပြီး Screen အပြည့်စာ ဒါမှမဟုတ် U (up), D (down) စတဲ့ Key တွေနဲ့ Screen တစ်ဝက်စာ Scroll လုပ်မယ်ဆို လုပ်နိုင်ပါသေးတယ်။ Page အစနဲ့အဆုံးကိုတော့ G နဲ့ Shift + G ကိုသုံးပြီး သွားနိုင်ပါတယ်။

Man Page ထဲက စာသားတစ်ခုခုကို ရှာချင်တယ်ဆိုလျှင်တော့ / ကိုနှိပ်၊ နောက်က ကိုယ်ရှာချင်တဲ့ keyword ကိုရိုက်ထည့်၊ ပြီးလျှင် Enter နှိပ်လိုက်ရုံပါပဲ။

man search 1

ပုံမှာပြထားတဲ့အတိုင်း /expire လို့ရိုက်ထည့်လိုက်မယ်ဆိုလျှင် ရောက်ရှိနေတဲ့ Man Page ရဲ့နေရာကနေစပြီး expire ဆိုတဲ့စာလုံးကိုရှာပေးပါလိမ့်မယ်။

man search 2

ပထမဆုံးရှာတွေ့မှာကတော့ -k option ရဲ့ ရှင်းလင်းချက်ထဲမှာပါတဲ့ expired ဆိုတဲ့ စာလုံးနှစ်လုံးပါ။ လိုချင်တာ --expire ဆိုတဲ့ option နဲ့ပတ်သက်တာဖြစ်တဲ့အတွက် N Key ကိုတစ်ချက်ချင်းနှိပ်ပြီး ဆက်လက်ရှာဖွေသွားလို့ရပါတယ်။ နောက်ဆုံး --expire ဆိုတာကိုရှာတွေ့ပါလိမ့်မယ်။

man search 3

အကယ်၍ N နှိပ်တာလွန်ပြီး ကိုယ်ရှာနေတဲ့စာလုံးကိုကျော်သွားခဲ့တယ်ဆိုလျှင်လည်း Shift + N နဲ့ နောက်ကြောင်းပြန်ပြီးရှာလို့ရပါတယ်။

ဒါကတော့ Man Page မှာ အသုံးများတဲ့ နည်းလမ်းလေးတချို့ပါ။ တခြား အသုံးပြုလို့ရတဲ့နည်းလမ်းတွေရှိပါသေးတယ်။ အဲဒါတွေကိုတော့ Man Page ဖွင့်ထားတဲ့အချိန် H Key ကိုနှိပ်ပြီး man ရဲ့ Help ကနေလေ့လာနိုင်ပါတယ်။

man help

Man Page ကနေ ပြန်ထွက်ချင်တယ်ဆိုလျှင်တော့ Q Key နှိပ်ပြီး ထွက်ရပါတယ်။

Searching Man Pages

အထက်မှာပြောခဲ့တဲ့အတိုင်း Man Page တွေကို အကြောင်းအရာအလိုက် Section တွေခွဲထားတာဖြစ်တဲ့အတွက် Command တစ်ခုကို Section တစ်ခုထက်ပိုပြီးရှိနေနိုင်ပါတယ်။ Section ဘယ်နှစ်ခုရှိလည်းသိချင်လျှင်တော့ -aw option သုံးပြီး ရှာနိုင်ပါတယ်။

man section 1

ပုံထဲကအတိုင်း man -aw passwd လို့ရိုက်လိုက်မယ်ဆိုလျှင်တော့ passwd နဲ့ဆိုင်တဲ့ Man Page ၃ခုကိုတွေ့ရပါလိမ့်မယ်။ အဲဒီထဲမှာမှ passwd ဆိုတဲ့ command နဲ့အတိအကျတူညီတဲ့ passwd.1.gz နဲ့ passwd.5.gz ၂ခုကိုတွေ့ရပါလိမ့်မယ်။ အဲဒီနှစ်ဖိုင်ရဲ့ 1 နဲ့ 5 ဆိုတာကတော့ Section ကိုဆိုလိုတာပါ။ Section 1 ကတော့ Command အကြောင်းဖြစ်ပြီး Section 5 ကတော့ အဲဒီ passwd command နဲ့ချိတ်ဆက်နေတဲ့ configuration file တွေအကြောင်းရှင်းပြပေးထားတာလို့ အကြမ်းဖျဉ်း ခွဲခြားနိုင်ပါတယ်။

Section 5 Man Page ကိုခေါ်ယူချင်တယ်ဆိုလျှင်တော့ man 5 passwd ဆိုပြီး ခေါ်ယူနိုင်ပါတယ်။ တခြား Section တွေအတွက်ဆိုလျှင်လည်း 5 နေရာမှာ ကိုယ်အလိုရှိတဲ့ Section Number ကို ထည့်သွင်းပေးလိုက်ရုံပါပဲ။

man section 3

အခု man 5 passwd ဆိုပြီး ခေါ်လိုက်တာဖြစ်တဲ့အတွက် PASSWD(5) ဆိုပြီး man passwd နဲ့မတူညီတဲ့ Page ကိုတွေ့ရပါလိမ့်မယ်။ Section 5 ဆိုတဲ့အတွက် passwd command နဲ့သက်ဆိုင်တဲ့ /etc/passwd /etc/shadow စတဲ့ဖိုင်တွေအကြောင်းကို ရှင်းပြထားတာဖြစ်ပါတယ်။

man -a passwd ဆိုလျှင်တော့ -aw option နဲ့မှာတွေ့ရတဲ့ page ၃ခုရဲ့ ပထမဆုံး page ကနေစဖော်ပြပေးမှာဖြစ်ပြီး Q Key နှိပ်ပြီး ထွက်လိုက်ပြီဆိုတာနဲ့ ပုံမှာပြထားတဲ့အတိုင်း View | Skip | Quit ဆိုပြီး ရွေးစရာတွေတွေ့ရပါလိမ့်မယ်။ next: sslpasswd(1ssl) ဆိုပြီးပြောထားတဲ့အတွက် Enter Key (return) နှိပ်လိုက်တာနဲ့ sslpasswd ဆိုတဲ့ Man Page ကိုမြင်ရမှာဖြစ်ပြီး နောက် လာမယ့် PASSWD(5) ကိုကျော်သွားချင်တယ်ဆိုလျှင်တော့ Ctrl+D Key နဲ့ ကျော်နိုင်ပါတယ်။ ထွက်မယ်ဆိုလျှင်တော့ Ctrl+C နဲ့ ထွက်နိုင်ပါတယ်။

man section 4

Man Page ရှာဖွေတဲ့နေရာမှာ သုံးနိုင်တဲ့ Option တွေရှိပါသေးတယ်။ အဲဒါတွေကတော့ -f နဲ့ -k ပါပဲ။ ဒီ Option နှစ်ခုရဲ့ကွာခြားချက်ကိုတော့ အောက်မှာပြထားတဲ့ပုံမှာကြည့်ကြည့်ပါ။ passwd ကို Search လုပ်မယ့် Keyword အနေနဲ့ သုံးထားပါတယ်။

man search 3

ကွာခြားချက်ကတော့ -f က ရှိသမျှ Man Page တွေရဲ့ Name နေရာမှာ သတ်မှတ်ထားတဲ့ Keyword ပါတဲ့ Page တွေကို ရှာဖွေထုတ်ပြပေးတာဖြစ်ပြီး -k ကတော့ Name နဲ့ Description နေရာမှာ Keywoard ပါတဲ့ Page တွေကိုထုတ်ပြပေးတာပဲဖြစ်တယ်။

အခုပြောသွားခဲ့တဲ့ Search လုပ်ပုံနည်းလမ်းတွေထဲမှာ man passwd နဲ့ man -aw passwd တို့က passwd command ရဲ့ Man Page ကိုရှာတာဖြစ်ပြီး man -f passwd နဲ့ man -k passwd ကတော့ ရှိသမျှ Man Page တွေထဲမှာ passwd ဆိုတဲ့ Keyword ပါတဲ့ Man Page တွေကိုရှာဖွေပေးတာပဲဖြစ်ပါတယ်။

ဒီလောက်ဆို ဆက်လက်လေ့လာဖို့ လုံလောက်မယ်ထင်ပါတယ်။ အသေးစိပ် သိချင်သေတယ်ဆိုလျှင်တော့ man man ဆိုတဲ့ command သုံးပြီး လေ့လာကြည့်လိုက်ပါ။ နောက်ဆုံးအနေနဲ့ ပြောချင်တာတစ်ခုကတော့ Man Page ကို စဖတ်ကြည့်တဲ့အချိန်မှာ ရှုပ်ထွေးလွန်းပြီး နာလည်ရခက်တယ်လို့ ထင်ကောင်းထင်မိပါလိမ့်မယ်။ အဓိက အကြောင်းအရင်းကတော့ Man Page ရဲ့ တင်ပြပုံကို မရင်းနှီးသေးလို့ပါပဲ။ Unix/Linux ကိုအခုမှစလေ့လာတဲ့သူတွေအတွက်တော့ Man Page ကိုတန်းဖတ်တာမျိုးထက် Useful Commands ဆိုတာမျိုးတွေ Google မှာရှာပြီး အလျှင်စမ်းကြည့်ပါ။ Command တစ်ခုတည်းကို Option အမျိုးမျိုးသုံးပြထားတာမျိုးတွေ့လျှင် အဲဒီ Command ရဲ့ Man Page နဲ့တိုက်ပြီးဖတ်ကြည့်ပါ။ ဘယ်လို Option မျိုးကို ဘယ်လိုရှင်းပြထားတယ်၊ ဘယ်လို နေရာမျိုးမှာသုံးတယ်ဆိုတာတွေ တဖြည်းဖြည်း နားလည်လာပါလိမ့်မယ်။ Man Page ရဲ့အထာကို ကောင်းကောင်းသိသွားပြီဆိုလျှင်တော့ တော်ရုံတန်ရုံ Command တွေကို အလွတ်မှတ်နေစရာမလိုတော့ဘဲ လိုအပ်တဲ့အချိန် လွယ်လင့်တကူ ပြန်ရှာနိုင်၊ သုံးနိုင်သွားမှာဖြစ်တဲ့အတွက် လေ့လာကြပါလို့ တိုက်တွန်းလိုက်ရပါတယ်။


comments powered by Disqus