ဆောင်းပါးလမ်းညွှန်
💻 dos2unix: command မတွေ့ဘူးလား။ ဒီအမှားကို command တစ်ခုတည်းနဲ့ ချက်ချင်းပြင်ပါ၊ Windows မှ Linux သို့ newline character conversion ပြဿနာများကို ဖြေရှင်းပါ - မြန်မြန်စတင်လိုက်ပါ! 🚀
ဒီလိုအခြေအနေမျိုး ကြုံဖူးပါသလား။
Linux terminal တွင် ပျော်ရွှင်စွာ အလုပ်လုပ်ခြင်း။ dos2unix check_htaccess.shပြီးတော့ စနစ်က မင်းကို မျက်နှာကို ကျယ်လောင်စွာ ရိုက်ပေးတယ်
-bash: dos2unix: command not found
မင်းရဲ့ စိတ်ဓာတ်က ရုတ်တရက် ပြိုကျသွားတယ်။ !
ဤသည်မှာ ကမ္ဘာ၏အဆုံးမဟုတ်ပေ၊ သင်ရေးသားခဲ့သော ဇာတ်ညွှန်းသည် အဆိပ်ပြင်းသည်မဟုတ်ပေ၊ သို့သော် သင့်စနစ်တွင် ၎င်းကို ထည့်သွင်းထားခြင်း လုံးဝမရှိပါ။ dos2unix ဒီကိရိယာ။
နောက်တစ်ခုအနေနဲ့ လက်ဖက်ရည်သောက်ပြီး ဒီအမှား ဘာကြောင့်ဖြစ်ခဲ့တာလဲ ၊ တစ်ခါတည်း ဘယ်လိုပြင်ရမလဲ ဆိုတာကို ဆွေးနွေးကြရအောင် ။
dos2unix ဆိုတာဘာလဲ။ ဘာကြောင့် လိုအပ်တာလဲ။
dos2unix ဤ command ၏အဓိကလုပ်ဆောင်ချက်မှာWindows လိုင်းအဆုံးများ (CRLF) ကို Unix လိုင်းအဆုံးများ (LF) သို့ ပြောင်းပါ။
သင်မေးနိုင်သည်- "လိုင်းဇာတ်ကောင်အသစ်ကို ဘာကြောင့်ပြောင်းတာလဲ။ အဲဒါက လိုင်းအသစ်တစ်ခုပဲ မဟုတ်ဘူးလား"
မှား! Windows နှင့် Unix တို့သည် စာသားဖိုင်များကို ကိုင်တွယ်ပုံသည် ဘယ်သန်နှင့် ညာသန်များကဲ့သို့ပင်၊ ၎င်းတို့တွင် မတူညီသောနည်းလမ်းများ ရှိသော်လည်း နှစ်ခုစလုံးကို ရေးသားနိုင်သည်။
Windows သုံးတယ်။ CRLFUnix ကသာ အသုံးပြုသော်လည်း (carriage return + line feed) LF(လိုင်းချိုး)။
သင်သည် Windows မှ Linux သို့ စာသားဖိုင်တစ်ခုကို လွှဲပြောင်းပါက၊ Linux သည် ၎င်းကို အထင်အမြင်သေးစွာဖြင့် ကြည့်ရှုပြီး "သူငယ်ချင်း၊ မင်းရဲ့ဖော်မတ်က မှားနေပြီ!"
အခုအချိန်တွင် dos2unix ၎င်းသည် သင့်အား Windows ဖော်မတ်ဖိုင်များကို Unix-ဖော်မတ်များအဖြစ်သို့ ပြောင်းလဲစေပြီး ထူးထူးခြားခြား အမှားအယွင်းများကို ရှောင်ရှားရန် ကူညီပေးပါမည်။
"command not found" အဘယ်ကြောင့်ပေါ်လာသနည်း။
အရမ်းရိုးရှင်းပါတယ်၊ စနစ်မှာ ဒီ command ကို လုံးဝမထည့်သွင်းထားပါဘူး။
Linux ဖြန့်ဖြူးမှုများစွာတွင် (အထူးသဖြင့် အနည်းဆုံး ထည့်သွင်းထားသော စနစ်များ)၊dos2unix မူရင်းအတိုင်း ထည့်သွင်းမထားပါ။ထို့ကြောင့် ၎င်းကို အသုံးပြုလိုပါက ဦးစွာ ထည့်သွင်းရပါမည်။
တံခါးသော့ကို ပြုပြင်လိုသည်ဟု စိတ်ကူးကြည့်ပါ၊ သို့သော် ကိရိယာပုံးတွင် ဝက်အူလှည့်မပါသည်ကို သင်တွေ့နိုင်သည်။ မင်းစိတ်ပျက်မှာမဟုတ်ဘူးလား။
dos2unix ကို ဘယ်လို install လုပ်ရမလဲ။
ဖြေရှင်းချက်က ရိုးရှင်းပါတယ်။ သင့်တွင် စီမံခန့်ခွဲသူအခွင့်အရေးများ ရှိနေသရွေ့ ၎င်းကို အလွယ်တကူ ထည့်သွင်းနိုင်သည်။

1. Debian/Ubuntu စီးရီး
အကယ်၍ သင်သည် Debian၊ Ubuntu သို့မဟုတ် အခြားသော Debian-based စနစ်များကို အသုံးပြုနေပါက၊ ပြေးလိုက်ပါ-
apt-get update && apt-get install dos2unix -y
2. CentOS/RHEL စီးရီး
အကယ်၍ သင်သည် CentOS သို့မဟုတ် RHEL ကိုအသုံးပြုနေပါက၊ သင်အသုံးပြုနိုင်ပါသည်။ yum ထည့်သွင်းရန်-
yum install dos2unix -y
သို့မဟုတ် သင့်စနစ်အသုံးပြုပါက dnf(CentOS 8+ တွင် အသုံးပြုနိုင်သည်)
dnf install dos2unix -y
၆။ Linux Linux
Arch အသုံးပြုသူများသည် ယေဘူယျအားဖြင့် ပို၍ "geeky" ဖြစ်ပြီး ၎င်းတို့ကိုယ်တိုင် လုပ်ဆောင်ရာတွင် ကောင်းမွန်သော်လည်း သင်မထည့်သွင်းပါက၊ dos2unixသုံးရုံပါပဲ။ pacman 安装:
pacman -S dos2unix
4.macOS
သင်သည် macOS အသုံးပြုသူဖြစ်ပါက၊ ၎င်းကို Homebrew ဖြင့် ထည့်သွင်းနိုင်သည်။
brew install dos2unix
တပ်ဆင်မှု အောင်မြင်ခြင်း ရှိ၊ မရှိ မည်သို့ စစ်ဆေးနိုင်မည်နည်း။
ထည့်သွင်းပြီးနောက်၊ ဤ command ကို run ကြည့်ပါ။
dos2unix --version
၎င်းသည် ဗားရှင်းနံပါတ်ကို နာခံမှုရှိရှိထုတ်ပေးပါက ဂုဏ်ပြုပါသည်၊ ထည့်သွင်းမှု အောင်မြင်ပါသည်။
ငါ dos2unix အမှန်တကယ်လိုအပ်ပါသလား။
ပြေးတာကို သတိပြုမိပေမည်။ file check_htaccess.sh ယင်းနောက်၊ စနစ်သည် အောက်ပါအချက်အလက်များကို ပေးခဲ့သည်။
check_htaccess.sh: Bourne-Again shell script, Unicode text, UTF-8 text executable, with very long lines (327)
ဆိုလိုသည်မှာ သင်၏ script သည် UTF-8 encoded Unix script ဖြစ်ပြီး ဖြစ်ပြီး သီအိုရီအရ newline character ပြဿနာ မရှိသင့်ပါ။
ဒါဆို ဘာကြောင့် install လုပ်ရတာ အဆင်မပြေတာလဲ။ dos2unix ဘာ?
ဘာကြောင့်လဲဆိုတော့ ဖိုင်အားလုံးက ကံမကောင်းလို့ပါပဲ။
အကယ်၍ သင် Windows မှ လွှဲပြောင်းထားသော ဖိုင်တွင် ပါရှိသည်။ CRLFအချို့သော Linux ပရိုဂရမ်များသည် အမှားအယွင်းများကို ခွဲခြမ်းစိတ်ဖြာရန် သို့မဟုတ် ပင်ဖြစ်စေနိုင်သည်။ bash မင်းရဲ့ ဇာတ်ညွှန်းမှာ တစ်ခုခု မှားနေပြီလို့ ငါ မှားနေတယ်။
အဲဒီတော့ ရှိတာ၊ dos2unixသင့်တွင် Swiss Army ဓားတစ်ချောင်းရှိသကဲ့သို့၊ Windows ဖော်မတ်ဖိုင်များကို အချိန်မရွေးပြုပြင်နိုင်ပြီး အမှားအယွင်းဖြစ်နိုင်ချေကို လျှော့ချနိုင်သည်။
အကယ်၍ ကျွန်ုပ်သည် dos2unix ကိုမတပ်ဆင်လိုပါက၊ အခြားနည်းလမ်းရှိပါသလား။
ဟုတ်ပါတယ်! Linux ကမ္ဘာတွင် "အိမ်သုံးကုထုံးများ" ပြတ်တောက်မှုမရှိပါ။
နည်းလမ်း 1: sed ကိုအသုံးပြုခြင်း။
sed ၎င်းသည် သတ်နိုင်သော မှော်ဆန်သည့်ကိရိယာတစ်ခုလည်းဖြစ်သည်။ CRLF လိုင်းခွဲများ-
sed -i 's/\r$//' check_htaccess.sh
နည်းလမ်း 2- tr ကိုသုံးပါ။
tr ၎င်းသည် ဖယ်ရှားနိုင်သည့် ဝါရင့် Unix ကိရိယာတစ်ခုလည်းဖြစ်သည်။ CR:
tr -d '\r' < check_htaccess.sh > newfile.sh
mv newfile.sh check_htaccess.sh
နည်းလမ်း 3- vim အသုံးပြုခြင်း။
သင်ဟာ အသုံးကျတယ်။ vim, သင်လုပ်နိုင်သည် vim အဲဒါကို ဘယ်လိုလုပ်ရမလဲ၊
:set fileformat=unix
:wq
အနှစ်ချုပ်- dos2unix သည် panacea မဟုတ်ပါ၊ သို့သော် အဆင်ပြေပါသည်။
မြင်လိုက်တာနဲ့ dos2unix: command not found အမှားလုပ်မိတဲ့အခါ မထိတ်လန့်ပါနဲ့။သင်သည် "ဖော်မတ်ပြောင်းလဲခြင်းကိရိယာ" တစ်ခုသာမရှိပါ။
dos2unixအဓိကအားဖြင့် အသုံးပြုသည်။Windows မှ Unix သို့ လိုင်းပြတ်တောက်မှု ပြဿနာကို ဖြေရှင်းခဲ့သည်။- ဒီကိရိယာမူရင်းအတိုင်း ထည့်သွင်းမထားပါ။ထို့ကြောင့် သင်ကိုယ်တိုင် ထည့်သွင်းရန် လိုအပ်ပါသည်။
- တပ်ဆင်နည်းသည် အလွန်ရိုးရှင်းသည်၊ မတူညီသောစနစ်များတွင် မတူညီသော command များရှိသည် (
apt-get,yum,dnf,pacman,brew) - မတပ်ဆင်ချင်ဘူးဆိုရင်၊သုံးလို့ရတယ်။
sed,tr或vimကိုယ်တိုင်ပြုပြင်ရန်
နောက်တစ်ခါ ဒီပြဿနာ ကြုံရင် ဘယ်လိုဖြေရှင်းရမလဲဆိုတာ သိလာလိမ့်မယ်။
မှတ်ထားပါ၊ ကိရိယာတွေ အများကြီးရှိရုံနဲ့ မပြီးဘူး၊ ဘယ်လိုသုံးရမလဲဆိုတာ သိရုံနဲ့လည်း ပြီးတယ်။ ဒီ "ပြောင်းလဲတဲ့ကိရိယာ" ကို ကျွမ်းကျင်သွားပြီဆိုတော့ စမ်းသုံးကြည့်လိုက်ပါ။ 🚀
Chen Weiliang ရဲ့ဘလော့ဂ် ( https://www.chenweiliang.com/ ) မှာ မျှဝေထားတဲ့ "✅ dos2unix: command not found error? This 1-line command solves it in seconds!" ဆောင်းပါးက သင့်အတွက် အထောက်အကူဖြစ်လိမ့်မယ်လို့ မျှော်လင့်ပါတယ်။
ဒီဆောင်းပါးလင့်ခ်ကို မျှဝေပေးဖို့ မတွန့်ဆုတ်ပါနဲ့- https://www.chenweiliang.com/cwl-32651.html
