ယနေ့ကျွန်ုပ်တို့ထုတ်ဝေသောဘာသာပြန်စာအုပ်သည် Linux command line ကိုကျွမ်းကျင်လိုသူများအတွက်ရည်ရွယ်ပါသည်။ ဤကိရိယာကို ထိထိရောက်ရောက်သုံးနိုင်မှုသည် အချိန်များစွာကို သက်သာစေနိုင်သည်။ အထူးသဖြင့်၊ Bash shell နှင့် အသုံးဝင်သော command 21 ခုအကြောင်း ဤနေရာတွင် ဆွေးနွေးပါမည်။ ရှည်လျားသောညွှန်ကြားချက်များကို စာရိုက်ခြင်းကို အရှိန်မြှင့်ရန် command flags နှင့် Bash aliases ကို အသုံးပြုနည်းကို ဆွေးနွေးပါမည်။
→
အသုံးအနှုန်းများ
Linux command line နှင့်အလုပ်လုပ်ရန် သင်ယူသောအခါ၊ လမ်းညွှန်ရန် အထောက်အကူဖြစ်စေသော သဘောတရားများစွာကို သင်တွေ့ရပါမည်။ ၎င်းတို့ထဲမှ အချို့သည် "Linux" နှင့် "Unix" သို့မဟုတ် "shell" နှင့် "terminal" ကဲ့သို့ တစ်ခါတစ်ရံတွင် ရှုပ်ထွေးနေပါသည်။ ဤအရာများနှင့် အခြားအရေးကြီးသော အသုံးအနှုန်းများအကြောင်း ဆွေးနွေးကြပါစို့။
ယခုကျွန်ုပ်တို့သည်အရေးကြီးသောအသုံးအနှုန်းများကိုခြုံငုံမိသောအခါ၊ ဤနေရာတွင် "Bash", "shell" နှင့် "command line" ဟူသောအသုံးအနှုန်းများအပြင် "directory" နှင့် "folder" ဟူသောဝေါဟာရများကိုဤနေရာတွင်အပြန်အလှန်သုံးမည်ဖြစ်ကြောင်း ထောက်ပြလိုပါသည်။
စံ stdin
), standard output (စံအထွက်၊ stdout
) နှင့် standard error output (စံအမှား၊ stderr
).
အောက်တွင်ဖော်ပြထားသောဥပမာ command များတွင်သင်ကဲ့သို့တစ်ခုခုကိုတွေ့လိမ့်မည်။ my_whatever
- ဆိုလိုသည်မှာ ဤအပိုင်းအစကို သင့်အရာတစ်ခုခုနှင့် အစားထိုးရန် လိုအပ်သည်ဟု ဆိုလိုသည်။ ဥပမာအားဖြင့်၊ ဖိုင်တစ်ခု၏အမည်။
ယခု၊ ဤအကြောင်းအရာအတွက် ရည်စူးထားသော ညွှန်ကြားချက်များကို ခွဲခြမ်းစိတ်ဖြာခြင်းမပြုမီ၊ ၎င်းတို့၏စာရင်းနှင့် ၎င်းတို့၏ဖော်ပြချက်အကျဉ်းကို လေ့လာကြည့်ကြပါစို့။
21 ဗာရှအမိန့်တော်
▍ အချက်အလက်ရယူခြင်း။
man
: အမိန့်အတွက် အသုံးပြုသူလမ်းညွှန် (အကူအညီ) ကို ပြသသည်။pwd
: အလုပ်လုပ်သည့်လမ်းညွှန်နှင့်ပတ်သက်သော အချက်အလက်ကို ပြသသည်။ls
: လမ်းညွှန်တစ်ခု၏ အကြောင်းအရာများကို ပြသသည်။ps
: လုပ်ဆောင်နေသည့် လုပ်ငန်းစဉ်များအကြောင်း အချက်အလက်များကို ကြည့်ရှုရန် ခွင့်ပြုသည်။
▍ ဖိုင်စနစ် ခြယ်လှယ်ခြင်း။
cd
: အလုပ်လမ်းညွှန်ကို ပြောင်းပါ။touch
: ဖိုင်တစ်ခုဖန်တီးပါ။mkdir
: လမ်းညွှန်တစ်ခု ဖန်တီးပါ။cp
: ဖိုင်တစ်ခုကို ကူးယူပါ။mv
: ဖိုင်တစ်ခုကို ရွှေ့ပါ သို့မဟုတ် ဖျက်ပါ။ln
: လင့်ခ်တစ်ခု ဖန်တီးပါ။
▍I/O လမ်းကြောင်းလွှဲခြင်းနှင့် ပိုက်လိုင်းများ
<
: ပြန်ညွှန်းသည်။stdin
.>
: ပြန်ညွှန်းသည်။stdout
.|
: command တစ်ခု၏ output ကို အခြား command တစ်ခု၏ input သို့ ပိုက်ထည့်သည်။
▍ ဖိုင်များဖတ်ခြင်း။
head
: ဖိုင်၏အစကိုဖတ်ပါ။tail
: ဖိုင်၏အဆုံးကိုဖတ်ပါ။cat
: ဖိုင်ကိုဖတ်ပြီး ၎င်း၏အကြောင်းအရာများကို မျက်နှာပြင်သို့ ပရင့်ထုတ်ပါ သို့မဟုတ် ဖိုင်များကို ပေါင်းစပ်ပါ။
▍ ဖိုင်များကို ဖျက်ခြင်း၊ လုပ်ငန်းစဉ်များကို ရပ်တန့်ခြင်း။
rm
: ဖိုင်တစ်ခုကို ဖျက်ပါ။kill
: လုပ်ငန်းစဉ်ရပ်ပါ။
▍ရှာဖွေရန်
grep
: အချက်အလက်ရှာဖွေပါ။ag
ရှာဖွေခြင်းအတွက် : အဆင့်မြင့် ကွန်မန်း။
▍ သိမ်းဆည်းခြင်း။
tar
: မော်ကွန်းတိုက်များ ဖန်တီးပြီး ၎င်းတို့နှင့် လုပ်ဆောင်ခြင်း။
ဒီ command တွေအကြောင်း အသေးစိတ်ပြောရအောင်။
အဖွဲ့အသေးစိတ်
စတင်ရန်၊ ပုံစံဖြင့်ထုတ်ပေးသောရလဒ်များကို commands များနှင့်ကိုင်တွယ်ကြပါစို့ stdout
. အများအားဖြင့် ဤရလဒ်များသည် terminal window တွင်ပေါ်လာသည်။
▍ အချက်အလက်ရယူခြင်း။
man command_name
: ညွှန်ကြားချက်လမ်းညွှန်၊ ဆိုလိုသည်မှာ အကူအညီ အချက်အလက်ကို ပြသပါ။
pwd
: လက်ရှိ လုပ်ဆောင်နေသည့် လမ်းကြောင်းကို ပြသပါ။ command line နှင့်အလုပ်လုပ်စဉ်တွင်၊ အသုံးပြုသူသည် system အတွင်းရှိမည်သည့်နေရာတွင်ရှိသည်ကိုမကြာခဏရှာဖွေရန်လိုအပ်သည်။
ls
: လမ်းညွှန်တစ်ခု၏ အကြောင်းအရာများကို ပြသပါ။ ဒီ command ကိုလည်း မကြာခဏ သုံးပါတယ်။
ls -a
: ဝှက်ထားသောဖိုင်များကိုပြသပါ။ အလံကို ဤနေရာတွင် အသုံးပြုထားသည်။ -a
ပညတ်တော်တို့ကို ls
. အလံများကိုအသုံးပြုခြင်းသည် command များ၏အပြုအမူကိုစိတ်ကြိုက်ပြင်ဆင်ရန်ကူညီပေးသည်။
ls -l
: ဖိုင်များအကြောင်းအသေးစိတ်အချက်အလက်များကိုပြသပါ။
အလံများ ပေါင်းစပ်နိုင်သည်ကို သတိပြုပါ။ ဥပမာ- ဤကဲ့သို့ ls -al
.
ps
: လုပ်ဆောင်နေသည့် လုပ်ငန်းစဉ်များကို ကြည့်ရှုပါ။
ps -e
: လက်ရှိအသုံးပြုသူ shell နှင့် ဆက်စပ်နေသည့်အရာများသာမက လုပ်ဆောင်နေသည့် လုပ်ငန်းစဉ်များအားလုံးအကြောင်း အချက်အလက်ကို ပြသပါ။ ဤအမိန့်ကို ဤပုံစံတွင် မကြာခဏအသုံးပြုသည်။
▍ ဖိုင်စနစ် ခြယ်လှယ်ခြင်း။
cd my_directory
: အလုပ်လမ်းညွှန်ကို ပြောင်းပါ။ my_directory
. လမ်းညွှန်သစ်ပင်တွင် အဆင့်တစ်ဆင့်တက်ရန်၊ အသုံးပြုပါ။ my_directory
ဆွေမျိုးလမ်းကြောင်း ../
.
cd အမိန့်
touch my_file
: ဖိုင်ဖန်တီးမှု my_file
ပေးထားသောလမ်းကို လျှောက်ပါ။
mkdir my_directory
: ဖိုင်တွဲတစ်ခုဖန်တီးပါ။ my_directory
ပေးထားသောလမ်းကို လျှောက်ပါ။
mv my_file target_directory
: ဖိုင်ကိုရွှေ့ပါ။ my_file
folder သို့ target_directory
. ပစ်မှတ်လမ်းညွှန်ကို သတ်မှတ်သောအခါ၊ သင်သည် ၎င်းဆီသို့ လုံးဝလမ်းကြောင်းကို အသုံးပြုရန် လိုအပ်သည် (ထိုကဲ့သို့သော တည်ဆောက်မှုမျိုး မဟုတ်ပါ။ ../
).
အသင်းအဖွဲ့ mv
ဖိုင်များ သို့မဟုတ် ဖိုင်တွဲများကို အမည်ပြောင်းရန်လည်း အသုံးပြုနိုင်သည်။ ဥပမာအားဖြင့်၊ ၎င်းသည် ဤကဲ့သို့သောပုံပေါက်နိုင်သည်-
mv my_old_file_name.jpg my_new_file_name.jpg
: ဖိုင်တစ်ခု၏ မိတ္တူကို ဖန်တီးပါ။
cp my_source_file target_directorymy_source_file
ဖိုင်တွဲတစ်ခုတွင်ထည့်ပါ။ target_directory
.
ln -s my_source_file my_target_file
: ပုံဆောင်လင့်ခ်တစ်ခုကို ဖန်တီးပါ။ my_target_file
ဖိုင်တစ်ခုစီ my_source_file
. လင့်ခ်ကို ပြောင်းပါက မူရင်းဖိုင်လည်း ပြောင်းပါမည်။
ဖို my_source_file
ထို့နောက် ဖျက်လိုက်ပါမည်။ my_target_file
ကျန်နေလိမ့်မယ်။ အလံ -s
ပညတ်တော်တို့ကို ln
လမ်းညွှန်များအတွက် လင့်ခ်များကို ဖန်တီးနိုင်စေပါသည်။
ယခု I/O လမ်းကြောင်းလွှဲခြင်းနှင့် ပိုက်လိုင်းများအကြောင်း ပြောကြပါစို့။
▍I/O လမ်းကြောင်းလွှဲခြင်းနှင့် ပိုက်လိုင်းများ
my_command < my_file
: ပုံမှန်ထည့်သွင်းမှုဖိုင်ဖော်ပြချက်အား အစားထိုးသည် (stdin
) ဖိုင်တစ်ခုစီ my_file
. ကီးဘုတ်မှ ထည့်သွင်းမှုအချို့ကို စောင့်ဆိုင်းနေပြီး ဤဒေတာကို ဖိုင်တစ်ခုတွင် သိမ်းဆည်းထားပြီးဖြစ်ပါက ၎င်းသည် အသုံးဝင်နိုင်သည်။
my_command > my_file
: command ၏ ရလဒ်များကို ပြန်ညွှန်းပေးသည်၊ ဆိုလိုသည်မှာ ပုံမှန်အားဖြင့် မည်သည့်အရာသို့ သွားမည်နည်း။ stdout
ဖိုင်တစ်ခုသို့ မျက်နှာပြင်သို့ ထုတ်ပေးပါ။ my_file
. ဖို my_file
မရှိပါ - ၎င်းကိုဖန်တီးထားသည်။ ဖိုင်ရှိလျှင်၊ ၎င်းကို overwrite လုပ်မည်ဖြစ်သည်။
ဥပမာအားဖြင့်၊ command ကိုလုပ်ဆောင်ပြီးနောက် ls > my_folder_contents.txt
လက်ရှိ လုပ်ဆောင်နေသည့် လမ်းညွှန်တွင် ပါရှိသည့် စာသားဖိုင်ကို ဖန်တီးမည်ဖြစ်သည်။
သင်္ကေတ အစား ဆိုလျှင် >
ဆောက်လုပ်ရေးကိုအသုံးပြုပါ။ >>
သို့ဆိုလျှင်၊ အမိန့်၏အထွက်ကို ပြန်ညွှန်းသည့် ဖိုင်ရှိနေသဖြင့် ဤဖိုင်ကို ထပ်ရေးမည်မဟုတ်ပါ။ ဒေတာကို ဤဖိုင်၏အဆုံးတွင် ထည့်သွင်းပါမည်။
အခု data pipeline processing ကို ကြည့်ကြရအောင်။
command တစ်ခု၏ output ကို အခြား command တစ်ခု၏ input တွင် ထည့်သွင်းသည်။ ပိုက်တစ်ခုနှင့် အခြားတစ်ခုကို ချိတ်ဆက်ထားသလိုပါပဲ။
first_command | second_command
: conveyor သင်္ကေတ၊ |
command တစ်ခု၏ output ကို အခြား command တစ်ခုသို့ ပေးပို့ရန် အသုံးပြုသည်။ ဖော်ပြထားသောဖွဲ့စည်းပုံ၏ဘယ်ဘက်ခြမ်းရှိ command ကိုမည်သို့ပေးပို့သည်။ stdout
ပြုတ်ကျ stdin
ပိုက်လိုင်းသင်္ကေတ၏ ညာဘက်တွင် အမိန့်ပေးသည်။
Linux တွင်၊ ကောင်းစွာဖွဲ့စည်းထားသော မည်သည့် command ကိုမဆို အသုံးပြု၍ ဒေတာကို သွယ်တန်းနိုင်သည်။ Linux ရှိ အရာအားလုံးသည် ပိုက်လိုင်းတစ်ခုဖြစ်သည်ဟု မကြာခဏပြောလေ့ရှိသည်။
ပိုက်လိုင်းသင်္ကေတကို အသုံးပြု၍ အမိန့်အများအပြားကို ကွင်းဆက်နိုင်သည်။ ဤပုံသည်-
first_command | second_command | third_command
အမိန့်များစွာရှိသည့် ပိုက်လိုင်းတစ်ခုကို ပိုက်လိုင်းတစ်ခုနှင့် နှိုင်းယှဉ်နိုင်သည်။
သင်္ကေတ၏ဘယ်ဘက်တွင်အမိန့်ပေးသောအခါသတိပြုပါ။ |
တစ်ခုခုကို ထုတ်ပေးသည်။ stdout
၊ သူမထွက်ရှိသောအရာသည်ချက်ချင်းရနိုင်သည်။ stdin
ဒုတိယအဖွဲ့။ ဆိုလိုသည်မှာ၊ ပိုက်လိုင်းကို အသုံးပြု၍ ကျွန်ုပ်တို့သည် အပြိုင် command များကို အကောင်အထည်ဖော်ခြင်းအား ကိုင်တွယ်ဖြေရှင်းနေခြင်းဖြစ်သည်ကို တွေ့ရှိရပါသည်။ တစ်ခါတစ်ရံ ၎င်းသည် မမျှော်လင့်ထားသော ရလဒ်များကို ဖြစ်ပေါ်စေနိုင်သည်။ ဒီအကြောင်းအသေးစိတ်ကို ဖတ်ရှုနိုင်ပါတယ်။
ယခု ဖိုင်များမှ ဒေတာများကို ဖတ်ရှုပြီး မျက်နှာပြင်ပေါ်တွင် ပြသခြင်းအကြောင်း ဆွေးနွေးကြပါစို့။
▍ ဖိုင်များဖတ်ခြင်း။
head my_file
: ဖိုင်တစ်ခု၏အစမှ လိုင်းများကိုဖတ်ပြီး မျက်နှာပြင်သို့ ပရင့်ထုတ်သည်။ သင်သည် ဖိုင်များ၏ အကြောင်းအရာများကိုသာမက အမိန့်ပေးသည့်အရာများကိုပါ ဖတ်နိုင်သည်။ stdin
ပိုက်လိုင်း၏ အစိတ်အပိုင်းအဖြစ် ဤအမိန့်ကို အသုံးပြုသည်။
tail my_file
: ဖိုင်၏အဆုံးမှ စာကြောင်းများကို ဖတ်သည်။ ဤအမိန့်ကို ပိုက်လိုင်းတစ်ခုတွင်လည်း သုံးနိုင်သည်။
ဦးခေါင်း (ဦးခေါင်း) သည် ရှေ့တွင်ရှိပြီး အမြီး (အမြီး) ရှိသည်။
အကယ်၍ သင်သည် pandas စာကြည့်တိုက်ကို အသုံးပြု၍ ဒေတာနှင့် လုပ်ဆောင်နေပါက၊ ထို့နောက် အမိန့်များပေးသည်။ head
и tail
မင်းနဲ့ရင်းနှီးရမယ်။ ဒီလိုမှမဟုတ်ရင် အထက်ဖော်ပြပါပုံကို ကြည့်ပြီး အလွယ်တကူ မှတ်မိပါလိမ့်မယ်။
ဖိုင်များကိုဖတ်ရန်အခြားနည်းလမ်းများကိုစဉ်းစားပါ၊ command အကြောင်းပြောကြပါစို့ cat
.
အဖွဲ့ cat
ဖိုင်တစ်ခု၏ အကြောင်းအရာများကို စခရင်သို့ ပရင့်ထုတ်ခြင်း သို့မဟုတ် ဖိုင်များစွာကို ပေါင်းစပ်ပေးသည်။ ခေါ်သည့်အခါ ဤအမိန့်ကို မည်မျှ ဖိုင်များပေးပို့မည်ဆိုသည့်အပေါ် မူတည်သည်။
ကြောင်အမိန့်
cat my_one_file.txt
: ဖိုင်တစ်ခုအား ဤအမိန့်သို့ ပေးပို့သောအခါ၊ ၎င်းကို ထုတ်လွှတ်သည်။ stdout
.
၎င်းကို ဖိုင်နှစ်ဖိုင် သို့မဟုတ် ထို့ထက်ပိုသောဖိုင်များ ပေးပါက၊ ၎င်းသည် ကွဲပြားစွာ လုပ်ဆောင်သည်။
cat my_file1.txt my_file2.txt
: ထည့်သွင်းမှုအဖြစ် ဖိုင်အများအပြားကို လက်ခံရရှိပြီးနောက်၊ ဤအမိန့်သည် ၎င်းတို့၏ အကြောင်းအရာများကို ပေါင်းစပ်ပြီး ဖြစ်ပျက်ခဲ့သည့်အရာများကို ပြသပေးသည်။ stdout
.
ဖိုင်ပေါင်းစပ်ခြင်း၏ရလဒ်ကို ဖိုင်အသစ်တစ်ခုအဖြစ် သိမ်းဆည်းရန် လိုအပ်ပါက၊ သင်သည် အော်ပရေတာအား အသုံးပြုနိုင်သည်။ >
:
cat my_file1.txt my_file2.txt > my_new_file.txt
ယခု ဖိုင်များကို ဖျက်နည်းနှင့် လုပ်ငန်းစဉ်များကို ရပ်တန့်နည်းအကြောင်း ဆွေးနွေးကြပါစို့။
▍ ဖိုင်များကို ဖျက်ခြင်း၊ လုပ်ငန်းစဉ်များကို ရပ်တန့်ခြင်း။
rm my_file
: ဖိုင်ကိုဖျက်ပါ။ my_file
.
rm -r my_folder
: ဖိုင်တွဲတစ်ခုကို ဖျက်သည်။ my_folder
၎င်းတွင်ပါရှိသော ဖိုင်များနှင့် ဖိုင်တွဲများအားလုံး။ အလံ -r
command သည် recursive mode တွင်အလုပ်လုပ်မည်ကိုညွှန်ပြသည်။
ဖိုင် သို့မဟုတ် ဖိုင်တွဲကို ဖျက်လိုက်တိုင်း အတည်ပြုချက်တောင်းခြင်းမှ ကာကွယ်ရန်၊ အလံကို အသုံးပြုပါ။ -f
.
kill 012345
: သတ်မှတ်ထားသော လုပ်ဆောင်နေသည့် လုပ်ငန်းစဉ်ကို ရပ်တန့်စေပြီး ချောမွေ့စွာ ပိတ်ရန် အချိန်ပေးသည်။
kill -9 012345
: သတ်မှတ်ထားသော လုပ်ဆောင်နေသည့် လုပ်ငန်းစဉ်ကို အတင်းအကျပ် ရပ်စဲသည်။ အလံကိုကြည့်ပါ။ -s SIGKILL
အလံကို ဆိုလိုသည်။ -9
.
▍ရှာဖွေရန်
ဒေတာရှာဖွေရန် ကွဲပြားခြားနားသော command များကို အသုံးပြုနိုင်သည်။ အထူးသဖြင့် - grep
, ag
и ack
. ဤအမိန့်တော်များဖြင့် ကျွန်ုပ်တို့၏အသိမိတ်ဆွေကို စတင်ကြပါစို့ grep
. ၎င်းသည် အချိန်နှင့်တပြေးညီ စမ်းသပ်ပြီး ယုံကြည်စိတ်ချရသော အမိန့်တစ်ခုဖြစ်ပြီး မည်သို့ပင်ဆိုစေကာမူ အခြားသူများထက် နှေးကွေးကာ ၎င်းတို့အသုံးပြုရသလောက် အဆင်ပြေမည်မဟုတ်ပေ။
grep အမိန့်
grep my_regex my_file
: ရှာဖွေမှုများ my_regex
в my_file
. ကိုက်ညီမှုတစ်ခုတွေ့ပါက၊ ပွဲစဉ်တစ်ခုစီအတွက် စာကြောင်းတစ်ခုလုံးကို ပြန်ပေးသည်။ ပုံသေ my_regex
ပုံမှန်အသုံးအနှုန်းအဖြစ် သဘောထားသည်။
grep -i my_regex my_file
: ရှာဖွေမှုကို case-insensitive ပုံစံဖြင့် လုပ်ဆောင်သည်။
grep -v my_regex my_file
: မပါဝင်သော အတန်းအားလုံးကို ပြန်ပေးသည်။ my_regex
. အလံ -v
ပြောင်းပြန်လှန်ခြင်းကို ဆိုလိုသည်၊ ၎င်းသည် အော်ပရေတာနှင့်တူသည်။ NOT
ပရိုဂရမ်းမင်းဘာသာစကားများစွာတွင် တွေ့နိုင်သည်။
grep -c my_regex my_file
: ရှာဖွေမှုပုံစံအတွက် ဖိုင်တွင်တွေ့ရှိသည့် ကိုက်ညီမှုအရေအတွက်နှင့်ပတ်သက်သည့် အချက်အလက်ကို ပြန်ပေးသည်။
grep -R my_regex my_folder
: သတ်မှတ်ထားသောဖိုင်တွဲရှိ ဖိုင်များအားလုံးနှင့် ၎င်းတွင်ရှိသော ဖိုင်တွဲများအတွင်းတွင်ရှိသော ဖိုင်များအားလုံးတွင် ထပ်တလဲလဲရှာဖွေမှုကို လုပ်ဆောင်သည်။
ကဲ အသင်းအကြောင်း ပြောကြရအောင် ag
. သူမနောက်မှလာခဲ့သည်။ grep
ပိုမြန်တယ်၊ အဲဒါနဲ့ အလုပ်လုပ်ရတာ ပိုအဆင်ပြေတယ်။
ag အမိန့်
ag my_regex my_file
: လိုင်းနံပါတ်များနှင့် ကိုက်ညီမှုများကို တွေ့ရှိထားသည့် လိုင်းများအကြောင်း အချက်အလက်ကို ပြန်ပေးသည်။ my_regex
.
ag -i my_regex my_file
: ရှာဖွေမှုကို case-insensitive ပုံစံဖြင့် လုပ်ဆောင်သည်။
အဖွဲ့ ag
ဖိုင်ကိုအလိုအလျောက်လုပ်ဆောင်ပါ။ .gitignore
နှင့် ထိုဖိုင်တွင် ဖော်ပြထားသော ဖိုင်တွဲများ သို့မဟုတ် ဖိုင်များတွင် တွေ့ရှိရသည့် အထွက်မှ ဖယ်ထုတ်သည်။ အရမ်းအဆင်ပြေတယ်။
ag my_regex my_file -- skip-vcs-ignores
: အလိုအလျောက်ဗားရှင်းထိန်းချုပ်မှုဖိုင်များ၏ အကြောင်းအရာများ (ကဲ့သို့သော .gitignore
) ရှာဖွေမှုတွင် ထည့်သွင်းစဉ်းစားခြင်း မရှိပါ။
နောက်ပြီး အသင်းသားတွေကို ပြောပြဖို့အတွက် ag
ရှာဖွေမှုမှ ဖယ်ထုတ်လိုသော ဖိုင်လမ်းကြောင်းများပေါ်တွင် ဖိုင်တစ်ခုကို ဖန်တီးနိုင်သည်။ .agignore
.
ဤကဏ္ဍ၏အစတွင်၊ ကျွန်ုပ်တို့သည် command ကိုဖော်ပြခဲ့သည်။ ack
. သင်း ack
и ag
အလွန်ဆင်တူပါသည်၊ ၎င်းတို့သည် 99% အပြန်အလှန်ဖလှယ်နိုင်သည်ဟု ကျွန်ုပ်တို့ပြောနိုင်သည်။ သို့သော် အသင်း ag
အလုပ်လုပ်တာ ပိုမြန်တယ်၊ ဒါကြောင့် ကျွန်တော် အဲဒါကို ဖော်ပြခဲ့တယ်။
အခု မော်ကွန်းတိုက်နဲ့ အလုပ်အကြောင်း ပြောကြရအောင်။
▍ သိမ်းဆည်းခြင်း။
tar my_source_directory
: ဖိုင်တွဲတစ်ခုမှ ဖိုင်များကို ပေါင်းစပ်သည်။ my_source_directory
tarball ဖိုင်တစ်ခုထဲသို့။ ထိုဖိုင်များသည် ဖိုင်အများအပြားကို တစ်စုံတစ်ဦးထံ လွှဲပြောင်းရာတွင် အသုံးဝင်သည်။
tar အမိန့်
ဤ command မှထုတ်ပေးသော tarball ဖိုင်များသည် extension ပါသည့်ဖိုင်များဖြစ်သည်။ .tar
(တိပ်ခွေ)။ "တိပ်" (တိပ်) ဟူသော စကားလုံးသည် အမိန့်တော်၏အမည်တွင် ဝှက်ထားသည်ဟူသောအချက်နှင့် ၎င်းဖန်တီးထားသည့် ဖိုင်များ၏အမည်များ၏ တိုးချဲ့မှုတွင် ဤအမိန့်တော်သည် မည်မျှကြာကြာတည်ရှိသည်ကို ဖော်ပြသည်။
tar -cf my_file.tar my_source_directory
: အမည်ရှိ tarball ဖိုင်ကို ဖန်တီးသည်။ my_file.tar
ဖိုင်တွဲအကြောင်းအရာများနှင့်အတူ my_source_directory
. အလံ -c
"ဖန်တီး" (creation) နှင့် အလံကို ကိုယ်စားပြုသည်။ -f
"ဖိုင်" (ဖိုင်) အဖြစ်။
ဖိုင်များမှ ထုတ်ယူရန် .tar
-file, command ကိုသုံးပါ။ tar
အလံများနှင့် -x
("extract", extraction) နှင့် -f
("ဖိုင်" ဖိုင်)။
tar -xf my_file.tar
: ဖိုင်များမှ ထုတ်ယူသည်။ my_file.tar
လက်ရှိအလုပ်လုပ်နေသောလမ်းညွှန်သို့
ယခု compress နှင့် decompress ကိုမည်သို့ပြောဆိုကြပါစို့ .tar
- ဖိုင်များ။
tar -cfz my_file.tar.gz my_source_directory
: ဒီမှာ အလံကိုသုံးတယ်။ -z
("zip", compression algorithm) သည် ဖိုင်များကို ချုံ့ရန် algorithm ကို အသုံးပြုသင့်ကြောင်း ညွှန်ပြသည် gzip
(GNUzip)။ ဖိုင်ချုံ့ခြင်းသည် ထိုဖိုင်များကို သိမ်းဆည်းသောအခါ ဒစ်စခ်နေရာလွတ်ကို သက်သာစေသည်။ ဥပမာအားဖြင့်၊ ဖိုင်များကို အခြားအသုံးပြုသူများထံ လွှဲပြောင်းရန် စီစဉ်ထားပါက၊ ၎င်းသည် ထိုဖိုင်များကို ပိုမိုမြန်ဆန်စွာ ဒေါင်းလုဒ်လုပ်ရန် အထောက်အကူဖြစ်စေပါသည်။
ဖိုင်ကို ဇစ်ဖွင့်ပါ။ .tar.gz
သင်အလံတစ်ခုထည့်နိုင်သည်။ -z
extract content command သို့ .tar
အထက်မှာ ဆွေးနွေးထားတဲ့ ဖိုင်များ။ ဤပုံသည်-
tar -xfz my_file.tar.gz
အသင်းဖြစ်တယ်ဆိုတာ သတိပြုသင့်ပါတယ်။ tar
ပိုအသုံးဝင်တဲ့ အလံတွေ အများကြီးရှိပါသေးတယ်။
Bash နာမည်တူများ
Bash aliases (aliases သို့မဟုတ် အတိုကောက်များဟုလည်း ခေါ်သည်) သည် commands များ၏ အတိုကောက်အမည်များ သို့မဟုတ် ၎င်းတို့၏ sequences များကို ဖန်တီးရန် ဒီဇိုင်းထုတ်ထားပြီး ပုံမှန် command များအစား အလုပ်ပိုမိုမြန်ဆန်စေမည့် အသုံးပြုမှုဖြစ်သည်။ သင့်တွင် နာမည်ဝှက်တစ်ခုရှိလျှင် bu
အမိန့်ကို ဖုံးကွယ်ထားသည်။ python setup.py sdist bdist_wheel
ထို့နောက် ဤအမိန့်ကို ခေါ်ရန်၊ ဤအမည်နာမကို အသုံးပြုရန် လုံလောက်ပါသည်။
ထိုသို့သောအမည်များဖန်တီးရန်၊ ဖိုင်တွင် အောက်ပါ command ကိုထည့်ရုံသာဖြစ်သည်။ ~/.bash_profile
:
alias bu="python setup.py sdist bdist_wheel"
သင့်စနစ်တွင် ဖိုင်မရှိလျှင် ~/.bash_profile
ထို့နောက် command ကို အသုံးပြု၍ သင်ကိုယ်တိုင် ဖန်တီးနိုင်သည်။ touch
. နာမည်တူကို ဖန်တီးပြီးနောက်၊ ဤအမည်တူကို သင်အသုံးပြုနိုင်ပြီးနောက် terminal ကို ပြန်လည်စတင်ပါ။ ဤကိစ္စတွင်၊ စာလုံးနှစ်လုံး၏ ထည့်သွင်းမှုသည် အသုံးပြုရန်အတွက် ရည်ရွယ်ထားသည့် command ၏ အက္ခရာသုံးဒါဇင်ကျော်၏ ထည့်သွင်းမှုကို အစားထိုးသည်။
В ~/.bash_profile
မကြာခဏအသုံးပြုသည့် မည်သည့် command များအတွက် နာမည်တူများ ထည့်နိုင်သည်။
▍ ရလဒ်များ
ဤပို့စ်တွင်၊ ကျွန်ုပ်တို့သည် လူကြိုက်များသော Bash command 21 ခုကို ခြုံငုံပြီး command aliases ဖန်တီးခြင်းအကြောင်း ဆွေးနွေးထားပါသည်။ ဒီအကြောင်းအရာကို စိတ်ဝင်စားတယ်ဆိုရင်-
ချစ်ခင်ရပါသောစာဖတ်သူများ! ဒီဆောင်းပါးမှာ ဆွေးနွေးထားတဲ့ သူတွေအတွက် အသုံးဝင်မယ့် ဘယ် command တွေကို သင်ထည့်မလဲ။
→
source: www.habr.com