About

Friday, June 3, 2011

Batch File သင္ခန္းစာ (၁၀)

Bat files အေၾကာင္းကုိ သိခ်င္ ေလ႕လာခ်င္တဲ႕ သူငယ္ခ်င္းမ်ားအတြက္ ကုိယ္တုိင္းေရးမဟုတ္ေပမဲ႕ ကၽြန္ေတာ္ကုိယ္တုိင္ မသိခင္က စေလ႕လာမိခဲ႕တဲ႕ ဆုိဒ္မွ မွတ္စုအေနနဲ႕ ကူးထားခဲ႕တာေလးပါ။ အဲ႕ဒီဆုိဒ္ကုိ ညြန္းခ်င္ေပမဲ႕လည္ လက္ရွိ ဆုိဒ္လိပ္စာကလည္ မေတြ႕ေတာ႕တာေၾကာင္႔ စာေရးသားသူအေနနဲ႕ နားလည္ေပးမယ္လုိ႕ ယုံၾကည္ပါတယ္။ ဒီသင္ခန္းစာကုိ ကၽြန္ေတာ္ ကုိယ္တုိင္း ေရးသားထားတာ မဟုတ္တာကုိေတာ႕ ရုိးသားစြာ ၀န္ခံပါတယ္။ ဒါေၾကာင္႔ မသိမနားလည္ရင္ေတာ႕ ေမးျမန္းႏုိင္ပါတယ္။ အကၽြမ္းက်င္ဆုံး အဆင္႔ မဟုတ္ေပမဲ႕ တက္ႏုိင္သမွ် ရွင္းျပေပးပါမည္။ မႈရင္း အေရးအသား အတုိင္း မျပင္ မျဖည္႔စြတ္ဘဲ တင္ျပလုိက္ပါတယ္။

ဒီေန႔ က်ေနာ္ေဆြးေႏြးေပးမယ့္ အေၾကာင္းအရာကေတာ့ Input ကို redirect လုပ္ၿခင္းပါ။
သူမွာ့လည္း က်ေနာ္တုိ႔ Output မွာတုန္းက လုပ္ခဲ့သလိုမ်ိဳးပါဘဲ Operator တစ္ခုရိွပါတယ္။ အဲဒါကေတာ့ ၿဖစ္ၿပီး အခု Input မွာေတာ့ < ပါ။ C တုိ႔ C++ တုိ႔နဲ႔ နည္းနည္းဘဲကြာတယ္ေနာ္။ ဟိုမွာက cout<> ေလ… သိပ္မလြဲပါဘူး။
Input Redirection Operator ကို ဘယ္လုိသံုးၾကလဲဆုိတာကေတာ့ ရွင္းပါတယ္ ၊ က်ေနာ္တုိ႔ text file မွာ ရိွတာေတြကို DOS ထဲေၿပာင္းထည့္တဲ့ အခါမ်ိဳးမွာ သံုးၾကတာပါ။ Output တုန္းက DOS ကေန text file ဆီကို လႊဲၿပီးေတာ့ အခု Input မွာေတာ့ text file ကေန DOS ကို လႊဲတဲ့သေဘာပါ။
သူ႔ကိုေတာ့ က်ေနာ္တုိ႔ဟာ Command တစ္ခ်ိဳ႕နဲ႔ တြဲသံုးေလ့ရိွပါတယ္။ အဲဒီ့ Command ေတြကေတာ့ MORE နဲ႔ TYPE ဘဲၿဖစ္ပါတယ္။
MORE ဆုိတာက က်ေနာ္တို႔ရဲ႕ Text File ထဲက စာသားေတြဟာ တအားရွည္တဲ့ အခါမ်ိဳးမွာ Screen တစ္ခ်ပ္စာကို တစ္ခါၿပေပးတဲ့ command ၿဖစ္ပါတယ္။ တနည္းအားၿဖင့္ Scroll ဆဲြရန္လိုတဲ့ စာသားေတြကို Screen Size ဆန္႔သေလာက္ တစ္ခါဆီၿပေပးတဲ့ command ပါ။ သူက Enter တစ္ခါေခါက္ရင္ တစ္လိုင္းဆင္းေပးပါတယ္။ (ေရးထားတာ ရႈပ္လုိ႔ နားလည္ပါ့မလားမသိဘူး)
TYPE ဆုိတာကေတာ့ က်ေနာ္တုိ႔ရဲ႕ Text File ထဲက စာသားရိွသေလာက္ကို တစ္ခါတည္းနဲ႔ Scroll ဆြဲၿပီးၿပတဲ့ Command ပါ။ သူ႔ရဲ႕ Scroll လုပ္သြားတဲ့ speed က တအားၿမန္ေတာ့ ေအာက္ဆုံးေရာက္ၿပီးမွ အေပၚကို တစ္ခါ ၿပန္တက္ရရင္ ၊ စာတအားရွည္တဲ့ အခါမ်ိဳးမွာ အခက္ေတြ႔ႏုိင္ပါတယ္။ (ဒါေကာ နားလည္ရဲ႕လား။ နားမလည္ရင္ ၿပန္ေမးပါေနာ္။)
အဲဒီ့ Command ႏွစ္ခုရဲ႕ အဓိပၸါယ္ကို နားလည္ၾကတယ္ဆုိရင္ေတာ့ ၊ ဘယ္ Command က ကိုယ္နဲ႔ အသင့္ေတာ္ဆုံး ၿဖစ္မယ္။ အသံုးၿပဳမယ့္သူနဲ႔ အသင့္ေတာ္ဆုံး ၿဖစ္မယ္ဆုိတာ စဥ္းစားၿပီး သံုးၾကပါ။ (က်ေနာ္ကေတာ့ TYPE မွ TYPE ဘဲ… More က enter ေခါက္ရတာ လက္ေညာင္းလို႔။ )
ဘာကြာသလဲဆုိတာ ေသခ်ာသိခ်င္ရင္ ေအာက္က Code ကို Command Prompt ထဲမွာ သြားရိုက္ၾကည့္လိုက္ပါ။
C:\မိမိ import (or) redirect လုပ္မယ့္ file ရိွသည့္လမ္းေၾကာင္း > MORE echo y | del *.*
အဲဒီ့ Code ကို ၾကည့္ရင္ေတာ့ နားလည္ၿပီထင္ပါတယ္။ echo နဲ႔ y ကို ရိုက္ထုတ္ပါတယ္။ အဲဒီ့အတြက္ y ဟာ အဲဒီ့ အခ်ိန္မွာ output တစ္ခုၿဖစ္ပါတယ္။ သူ႔ေနာက္မွာေတာ့ | ဆုိၿပီးေတာ့ Pipe Operator တစ္ခုသံုးထားပါတယ္။ အဲလိုသံုးထားတဲ့ အတြက္ က်ေနာ္တုိ႔ဟာ del တဲ့ Command ကလိုအပ္တဲ့ import တစ္ခုၿဖစ္တဲ့ y ေနရာမွာ ခုနက ထြက္လာတဲ့ output ၿဖစ္တဲ့ y ကို သံုးလိုက္ပါတယ္။OK? (ဟူး… ဒီေလာက္ ဆုိရင္ေတာ့ သေဘာေပါက္ၿပီထင္ပါတယ္။)
အခုေရးခဲ့တဲ့ နည္းေတြကေတာ့ Input Redirect လုပ္နည္းမ်ားၿဖစ္ပါတယ္။ ပံုမွန္လုပ္ေနၾကၿဖစ္တဲ့ Keyboard ကေန Input သြင္းတာထက္ ၊ မိမိရဲ႕ System ထဲမွာဘဲ Input ကို လွည့္သံုးသြားတဲ့နည္းပါ။ လုပ္ရတာ ေပ်ာ္ဖို႔ေကာင္းတယ္ေနာ္။ (အခု စာဖတ္သူေတာ့ ေပ်ာ္မေပ်ာ္မသိဘူး။ က်ေနာ့္အတြက္ေတာ့ ဒါေတြ ေလ့လာခဲ့ရတဲ့ အခ်ိန္ဟာ ေပ်ာ္ဖို႔ အေကာင္းဆုံးပါဘဲ။ ဘာမွန္းမသိဘဲနဲ႔ Screen မဲမဲၾကီးမွာ စာေတြ က်လာတာကို ေပ်ာ္ခဲ့တာေလ။ အခုေတာ့ ပ်က္ဆီးေနၿပီ… ဘာမွလုပ္ခ်င္စိတ္ ၊ ေလ့လာခ်င္စိတ္မရိွဘူးၿဖစ္ေနတယ္။)
Batch File Programming က တကယ္ေလ့လာရင္ အရမ္းကို လြယ္တဲ့ဟာတစ္ခုပါ။ ၿပီးေတာ့ သံုးတတ္ရင္ သံုးတတ္သလို အက်ိဳးလည္းရိွၿပီးေတာ့ ၊ သံုးရတာလည္း တကယ္ ေပ်ာ္ဖို႔ ေကာင္းပါတယ္။ သူ႔ကိုေလ့လာခ်င္တယ္ ဆုိရင္လည္း တၿခားဟာေတြလို မ်ားမ်ားစားစား knowledge ရိွစရာမလိုပါဘူး။ DOS Command ေတြကို နည္းနည္းပါးပါး အကြ်မ္းတ၀င္ရိွတယ္ဆုိရင္ဘဲ လုပ္စားလို႔ရေနၿပီ။
DOS Command ေတြနဲ႔ ပါတ္သက္လို႔ ေလ့လာလို႔ရတဲ့ site ေတြ အမ်ားၾကီးရွိပါတယ္။ အဲဒီ့မွာေလ့လာပါ ၊ ဖတ္ပါ ၊ မွတ္ပါ ၊ သင္ယူပါ ၊ ကိုယ္တုိင္လုပ္ၾကည့္ပါ။ အဲလို site ေတြမွာ တစ္ခါတစ္ေလဆုိရင္ DOS ရဲ႕ Hidden Command ေတြလည္း မေရမတြက္ႏုိင္ေအာင္ရွိေနတတ္ပါတယ္။ အဲလိုလုပ္ၿပီးေတာ့ ေလ့လာလုိက္မယ္ဆုိရင္ Batch File Programming မွာ ဆရာတစ္ဆူၿဖစ္လာႏုိင္တယ္။ အေပၚမွာေရးခဲ့ဖူးတုန္းကလုိဘဲ ဆရာတစ္ဆူၿဖစ္ရင္ ဘာလုပ္လို႔ရလဲေတာ့ မေမးၾကနဲ႔ေနာ္။ က်ေနာ္လည္း Bat ကို အိတ္စပါတ္ မဟုတ္သလို စပယ္ရွယ္လစ္ လဲဟုတ္ဘူး။ ဘာလုပ္လုိ႔ရလဲဆုိတာလည္း ကိုယ့္ေပၚဘဲမူတည္တယ္ေနာ္။ က်ေနာ္ ေၿပာတာ ၂ ခါရိွၿပီ… ထပ္ေမးၾကနဲ႔ )
ဒီေန႔ေတာ့ ဒီေလာက္ဘဲေနာ္။ ေနာက္တစ္ခါ ဘာေရးရမယ္မွန္းက ခုထိမသိေသးလို႔ ၊ ဒီေန႔ေတာ့ ေနာက္တစ္ေခါက္ ဘာေဆြးေႏြးမယ္ဆုိတာ ၾကိဳမေၿပာခဲ့ေတာ့ဘူးေနာ္။ တားတားဖိုရမ္လည္း ၿပင္ဆင္ေနရေသးလို႔ ၊ က်န္တာ ေခါင္းထဲ သိပ္မ၀င္ဘူး ၿဖစ္ေနတယ္။ ေနာက္တစ္ခါ ပိုစ့္တင္မွ ဘာအေၾကာင္းလဲဆုိတာ ၾကည့္ေပေတာ့။ တာ့တာ…..
စာဖတ္သူအေပါင္း က်န္းမာေပ်ာ္ရႊင္ၿပီး ကြန္နက္ရွင္ေကာင္းေကာင္း ရၾကပါေစ။

written by SYKO

Thursday, June 2, 2011

Batch File သင္ခန္းစာ (၉)

Bat files အေၾကာင္းကုိ သိခ်င္ ေလ႕လာခ်င္တဲ႕ သူငယ္ခ်င္းမ်ားအတြက္ ကုိယ္တုိင္းေရးမဟုတ္ေပမဲ႕ ကၽြန္ေတာ္ကုိယ္တုိင္ မသိခင္က စေလ႕လာမိခဲ႕တဲ႕ ဆုိဒ္မွ မွတ္စုအေနနဲ႕ ကူးထားခဲ႕တာေလးပါ။ အဲ႕ဒီဆုိဒ္ကုိ ညြန္းခ်င္ေပမဲ႕လည္ လက္ရွိ ဆုိဒ္လိပ္စာကလည္ မေတြ႕ေတာ႕တာေၾကာင္႔ စာေရးသားသူအေနနဲ႕ နားလည္ေပးမယ္လုိ႕ ယုံၾကည္ပါတယ္။ ဒီသင္ခန္းစာကုိ ကၽြန္ေတာ္ ကုိယ္တုိင္း ေရးသားထားတာ မဟုတ္တာကုိေတာ႕ ရုိးသားစြာ ၀န္ခံပါတယ္။ ဒါေၾကာင္႔ မသိမနားလည္ရင္ေတာ႕ ေမးျမန္းႏုိင္ပါတယ္။ အကၽြမ္းက်င္ဆုံး အဆင္႔ မဟုတ္ေပမဲ႕ တက္ႏုိင္သမွ် ရွင္းျပေပးပါမည္။ မႈရင္း အေရးအသား အတုိင္း မျပင္ မျဖည္႔စြတ္ဘဲ တင္ျပလုိက္ပါတယ္။

ဒီေန႔ က်ေနာ္ေဆြးေႏြးေပးမယ့္ အပိုင္းကေတာ့ Input/Output ရယ္ Redirect လုပ္တာရယ္စတဲ့ အပိုင္းေတြကို ေဆြးေႏြးေပးမွာပါ။ ဒီအပိုင္းကေတာ့ က်ေနာ္ သိပ္မသိလို႔ Internet ေပၚကေန ရွာေတြ႔ထားတာေတြကို ဘာသာၿပန္ထားတာပါ။ က်ေနာ္က အဂၤလိပ္လို သိပ္မဖတ္တတ္လို႔ ဘာသာၿပန္တဲ့အခါမွာ ညံ့ခ်င္ညံ့ေနပါလိမ့္မယ္။ ခြင့္လႊတ္ေပးပါေနာ္။
System တစ္ခုဟာ ပံုမွန္အားၿဖင့္ေတာ့ Output ကို Screen ကေနထုတ္ၿပၿပီးေတာ့ ၊ Input ကိုေတာ့ Keyboard ကေနလက္ခံပါတယ္။ အဲလိုလုပ္တာဟာ လုပ္ရိုးလုပ္စဥ္ သိေနၾက ၿမင္ဖူးေနၾက လူတုိင္းသိတဲ့ လမ္းေဟာင္းၾကီးၿဖစ္တဲ့ အတြက္ က်ေနာ္တို႔ ပ်င္းရတာအမွန္ပါ။
အကယ္လို႔မ်ား Input တစ္ခုခုကို တၿခားတေနရာရာကေန လက္ခံၿပီးေတာ့ Output ကိုလည္း တၿခားေနရာတစ္ခုခုကို သြားထုတ္ႏိုင္ရင္ ေပ်ာ္ဖို႔နည္းနည္းေကာင္းလာမွာေပါ့ေနာ္။ ဟုတ္တယ္ဟုတ္။
အဲလိုလုပ္ဖို႔လည္း နည္းလမ္းရိွပါသတဲ့။
Output ကို Screen ေပၚသက္သက္တင္ၿပတာမဟုတ္ဘဲနဲ႔ တၿခားေနရာမွာ သြားရိွေနေစခ်င္ရင္ေတာ့ က်ေနာ္တုိ႔ဟာ Output Redirection Operator ၿဖစ္တဲ့ > ဆုိတာကို သံုးလို႔ရပါတယ္။
> ဆုိတာက ဘာလုပ္ေပးလည္းဆုိရင္ေတာ့ က်ေနာ္တို႔ Desktop ဒါမွမဟုတ္ တစ္ေနရာရာကို Print Screen ဖမ္းၿပီးေတာ့ Paint ထဲမွာ save လုပ္သလိုပါဘဲ။ သူကလည္း က်ေနာ္တုိ႔ ရဲ႕ bat program က ရလဒ္ေတြ အေၿဖေတြကို မွတ္ၿပီးေတာ့ text file တစ္ခုအေနနဲ႔ သိမ္းေပးတာပါ။
ဥပမာ တစ္ခုအေနနဲ႔ ေၿပာရမယ္ဆုိရင္ေတာ့….
အကယ္လို႔မ်ား က်ေနာ္တုိ႔ဟာ net ဆုိတဲ့ command အေၾကာင္းသိခ်င္လုိ႔ Command Prompt ထဲမွာ help ဆုိတာရိုက္ၿပီးေတာ့ ေမးလိုက္တယ္ဆုိပါစို႔။
အဲဒါဆုိရင္ေတာ့ ထြက္လာမယ့္ အေၿဖေတြက နည္းတာမဟုတ္တဲ့ အတြက္ေၾကာင့္ Screen နဲ႔ လည္းမဆန္႔တာမ်ိဳး ၿဖစ္ႏုိင္သလို ၊ CommandPrompt က minimize ၿဖစ္ေနရင္လည္း scroll ဆင္းသြားတာ တအားၿမန္လြန္းပါတယ္။ အဲဒါဆုိရင္ က်ေနာ္တုိ႔ အေနနဲ႔ လိုခ်င္တဲ့ အေၿဖကို ၿပန္ရွာတဲ့အခါ scroll bar ကိုအေပၚတက္ေအာက္ဆင္းနဲ႔ အလုပ္ရႈပ္လြန္းပါတယ္။
အဲဒီ့ၿပႆနာမ်ိဳးကို ေၿဖရွင္းဖို႔ကေတာ့ Output Redirection ဆုိတဲ့ Operator ေလးကို သံုးၿပီးေတာ့ ထြက္လာမယ့္ ရလဒ္ေတြကို text file ထဲမွာ သိမ္းလိုက္တာ အဆင္အေၿပဆုံးပါဘဲ။
ေအာက္က help > help.txt ဆုိတဲ့ Code ေလးကို Command Prompt ကိုေခၚၿပီးေတာ့ ရိုက္ၾကည့္ပါ။
c:\ကိုယ္ေပးခ်င္တဲ့လမ္းေၾကာင္း > help > help.txt
အဲဒါဆုိရင္ေတာ့ က်ေနာ္တုိ႔ရိုက္လုိက္တဲ့ Command Prompt Screen ထဲမွာ ဘာမွက်လာမွာေတာ့မဟုတ္ေတာ့ေပမယ့္။ က်ေနာ္တို႔ ေရြးေပးခဲ့တဲ့ လမ္းေၾကာင္းေအာက္မွာ help.txt ဆိုတဲ့ text file ေလး ေရာက္ေနပါလိမ့္မယ္။ သူ႔ကို ဖြင့္ၾကည့္လိုက္ရင္ေတာ့ help ဆုိတဲ့ Command ကို ရိုက္လုိက္ရင္ရလာမယ့္ အေၿဖေတြကို save လုပ္ေပးထားတာ ေတြ႔ရပါလိမ့္မယ္။ OK?
အဲ… တစ္ခုေတာ့ သတိေပးမယ္ေနာ္။ text file ရဲ႕ နာမည္ေပးရင္ အေရးၾကီးဖိုင္ေတြရဲ႕ နာမည္ေတြနဲ႔ သြားမထပ္ပါေစနဲ႔။
ဥပမာ က်ေနာ့္ဆီမွာ က်ေနာ့္ Password ေတြ သိမ္းတဲ့ password.txt ဆုိတဲ့ file ရိွတယ္ဆုိပါစို႔။ အဲဒီ့ password.txt ဆုိတဲ့ နာမည္နဲ႔ ခုနက help.txt ဆိုတဲ့ေနရာမွာ ရိုက္ထည့္လိုက္ရင္ က်ေနာ္ သိမ္းထားတဲ့ Password ေတြအားလုံးကို Overwrite လုပ္ပလိုက္ပါတယ္။
တုိတုိ နဲ႔ လြယ္လြယ္ ေၿပာရရင္ေတာ့ဗ်ာ အဲဒီ့ > ဆုိတဲ့ Operator ေလးက file နာမည္တူေနတာ ေတြ႔ရင္ေတာင္မွ ဘာမေၿပာညာမေၿပာနဲ႔ ရိွၿပီးသား စာေတြကို သူမွတ္ရမယ့္ အေၿဖနဲ႔ overwrite လုပ္လိုက္တယ္ဆုိတာပါ။ အကယ္လို႔မ်ား file နာမည္အတူတူေပးမိခဲ့ရင္ေတာ့ ကိုယ့္အၿပစ္နဲ႔ကိုယ္ေနာ္။ က်ေနာ္ သတိေပးတယ္။ file နာမည္ တူတာမရိွရင္ေတာ့ ကိစၥမရိွပါဘူး။ သူ႔ဟာသူ အလုိလို create လုပ္ေပးသြားလိမ့္မယ္။
ခုနက overwrite လုပ္တတ္တယ္လို႔ သတိေပးလိုက္တယ္ေနာ္။ ဒါေပမယ့္ အဲဒီ့ Overwrite လုပ္တာကို ေၿဖရွင္းဖုိ႔ နည္းတစ္ခုေတာ့ ရိွပါေသးတယ္။ ထပ္ၿဖည့္သြားတဲ့နည္းပါ။
အဲဒါကေတာ့ >> ဆုိတဲ့ Operator သံုးရမွာပါ။ က်ေနာ္တုိ႔ ခုနက ဥပမာမွာဆုိရင္ေတာ့ help.txt ထဲကို help ရုိက္ရင္ထြက္လာမွာေတြ သိမ္းထားၿပီးပါၿပီ။ အဲဒီ့ဟာေတြ အေနာက္မွာ ထပ္ၿဖည့္ခ်င္ရင္ေတာ့ ေအာက္က Code ေလးနဲ႔ စမ္းၾကည့္လိုက္ပါ။
c:\ခုနက help.txt ရိွတဲ့လမ္းေၾကာင္း > net >> help.txt
Command Prompt ထဲမွာ အဲဒီ့လိုရုိက္လိုက္ရင္ေတာ့ က်ေနာ္တုိ႔ရဲ႕ ရိွၿပီးသား help.txt file ထဲမွာ net command ရဲ႕ အေၾကာင္းေလးကို ထပ္ၿဖည့္ၿပီးသားေတြ႔ရမွာပါ။ ရွင္းမယ္ထင္ပါတယ္ေနာ္။
အလြယ္နည္းမွတ္ထားဖို႔က >> ဆုိတာ ရိွၿပီးသား file တစ္ခုထဲကို စာထပ္ၿဖည့္တဲ့သေဘာပါ။
OK?
က်ေနာ္ ေၿပာရင္းေၿပာရင္းနဲ႔ bat file အေၾကာင္းကေန DOS ဘက္ႏြယ္သြားၿပီထင္တယ္။ အစကတည္းကလည္း Bat နဲ႔ DOS ဆုိတာ အတူတူပါဘဲ။ အဲဒီ့ေတာ့ က်ေနာ္လည္း ၿပည့္ၿပည့္စံုစံုေလး ေၿပာၿပခ်င္လုိ႔ Internet ေပၚမွာေမႊရင္းနဲ႔ ေတြ႔တာေတြ အကုန္ေပါင္းထည့္ၿပီးေတာ့ ဘာသာၿပန္ေပးလုိက္တာ။ ဟီး… အက်ိဳးေတာ့ရိွပါတယ္။ ဟုတ္တယ္ဟုတ္။
DOS ရဲ႕ Command ေတြ အေနနဲ႔ ခုနကလုိမ်ိဳး File ေတြဆီကိုသာ redirect လုပ္ေပးႏုိင္တာမဟုတ္ပါဘူး ၊ အမ်ိဳးမ်ိဳးေသာ Device ေတြဆီကိုလည္း redirect လုပ္ေပးႏုိင္ပါေသးတယ္။ ေအာက္မွာ ဆက္ေလ့လာပါ။
Command အေနနဲ႔ ရုိက္ရမည့္ အမည္ Device အမည္
AUX Auxiliary Device (COM1)
CLOCK$ Real Time Clock
COMn Serial Port (COM1, COM2, Com3, COM4)
CON Console (Keyboard, Screen)
LPTn Parallel Port (LPT1, LPT2, LPT3)
NUL NUL Device (ဘာမွမရိွတာကို ဆုိလိုတာပါ)
PRN Printer
ဥပမာ အေနနဲ႔ ၾကည့္မယ္ဆုိရင္ေတာ့…. အကယ္္လို႔မ်ား က်ေနာ္တို႔ဟာ directory ရဲ႕ list ကို Print ထုတ္ခ်င္တယ္ဆုိရင္ ေအာက္က Command ကို သံုးလုိ႔ရပါတယ္။
c:\မိမိ ေရြးခ်ယ္ေသာ ႏွစ္သက္ရာ လမ္းေၾကာင္း>dir *.* > prn
အဲဒါဆုိရင္ စက္နဲ႔ ခ်ိတ္ဆက္ထားတဲ့ Printer ကေန Print ထုတ္ပါလိမ့္မယ္။ တၿခား Command ေတြလည္း သူတုိ႔နဲ႔ ဆုိင္ရာဆုိင္ရာ အလုပ္ကို လုပ္ၾကပါတယ္။
အဲဒီ့မွာ ခက္တာ တစ္ခုက NUL ဆုိတဲ့ Device ပါ။ က်ေနာ္ အစက သူ႔ကို ဘယ္နားမွာ သံုးရမယ္မွန္းမသိခဲ့ဘူးဗ်။
အဲဒါနဲ႔ ေဘာ္ဒါၾကီး ေဂၚဂယ္ ဆီသြားေမးေတာ့ ဒီလုိေလးေၿပာထားေလရဲ႕….
NUL Device ကိုေနာက္တစ္မ်ိဳးအေနနဲ႔ ‘bit bucket’ လုိ႔ေခၚပါသတဲ့။ သူ႔ကို Redirect လုပ္ခ်င္တဲ့ ဘယ္ေနရာမွာမွ သံုးေလ့မရိွပါဘူး။ ဒါေပမယ့္ လုပ္ခ်င္တဲ့ အလုပ္ၿပီးေၿမာက္ေၾကာင္း Message ၿပခ်င္တာမ်ိဳးမွာေတာ့ သံုးေလ့ရိွပါတယ္။ ဥပမာ… က်ေနာ္တို႔ File တစ္ဖိုင္ကို DOS မွာ COPY လုပ္လုိက္တယ္ဆုိရင္ေတာ့ အလုပ္ၿပီးေၿမာက္ေၾကာင္းကို 1 file(s) coppied. ဆုိၿပီးေတာ့ ၿပတတ္ပါတယ္။ အဲလိုမ်ိဳးကို Redirect လုပ္တဲ့ အခါမွာ ၿပခ်င္တယ္ဆုိရင္ေတာ့….
C:\မိမိလမ္းေၾကာင္း > copy test.txt > NUL
အဲဒီ့ အေပၚက Code ေလးသံုးလိုက္ရင္ ရပါၿပီ။ အဲဒါဆုိရင္ေတာ့ က်ေနာ္တုိ႔ လိုခ်င္တဲ့ 1 file(s) coppied. ဆုိၿပီးေတာ့ ၿပပါလိမ့္မယ္။ OK?
ဒီေလာက္ဆုိရင္ေတာ့ က်ေနာ္တုိ႔ဟာ Output ကို Redirect လုပ္ၿခင္းနဲ႔ ပတ္သက္ၿပီး သိသြားပါၿပီ။ ေနာက္တစ္ခန္းမွာေတာ့ Input ကို Redirect လုပ္ၾကည့္ပါမယ္။

written by SYKO

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Top WordPress Themes