pelrêça gotarê
💻 dos2unix: ferman nehat dîtin? Vê çewtiyê bi tenê yek fermanê tavilê rast bike, pirsgirêkên veguherîna karakterên rêza nû yên Windows bo Linux çareser bike - zû dest pê bike! 🚀
Hûn qet rastî vê rewşê hatine?
Di termînalek Linuxê de bi kêfxweşî dimeşîne dos2unix check_htaccess.sh, sîstemê sîleyek bi dengekî bilind li rûyê we da:
-bash: dos2unix: command not found
Zihniyeta we ji nişka ve têk çû? !
Ew ne dawiya dinyayê ye, ne ew e ku skrîpta ku we nivîsandiye jehr e, tenê pergala we qet nehatiye saz kirin. dos2unix vê amûrê.
Piştre, em çay vexwin û li ser sedema çêbûna vê xeletiyê û çawaniya rastkirina wê bi carekê re biaxivin.
dos2unix çi ye? Çima hûn hewce ne?
dos2unix Fonksiyona sereke ya vê fermanê ew e kuXeta xeta Windows-ê (CRLF) veguherînin pêveka xeta Unix (LF).
Hûn dikarin bipirsin: "Gelo guherandina xetên nû çi hêsan e? Ma ew hemî ne wekî xetên nû ne?"
qelp! Windows û Unix pelên nivîsê mîna çepgir û rastgiran, ku bi awayên cihê dinivîsin lê hem jî dikarin binivîsin, digirin.
Windows bikar tîne CRLF(vegera barkêş + xwarina rêzê), dema ku Unix tenê bikar tîne LF(xeta nû).
Heke hûn pelek nivîsê ji Windows-ê veguherînin Linux-ê, dibe ku Linux bi nefret lê binêre û bibêje, "Bira, formata te xelet e!"
Di vê demê de dos2unix Ev bi kêr tê, ew ê ji we re bibe alîkar ku hûn pelên formata Windows-ê bi forma Unix-heval veguherînin û ji xeletiyên cihêreng ên xerîb dûr bixin.
Çima "ferman nehat dîtin" xuya dike?
Ew pir hêsan e, pergalê qet vê fermanê saz nake!
Di gelek belavkirinên Linux de (nemaze pergalên bi kêmî ve hatî saz kirin),dos2unix Ji hêla xwerû ve nehatiye saz kirin, ji ber vê yekê heke hûn dixwazin wê bikar bînin, divê hûn pêşî saz bikin.
Bifikirin ku hûn dixwazin kilîtek derî tamîr bikin, tenê ji bo ku hûn zanibin ku di qutiya amûrê de tixûbdar tune. Çawa hûn nikarin hilweşînin?
Meriv çawa dos2unix saz dike?
Çareserî hêsan e! Heya ku hûn mafên rêveberiyê hene, hûn dikarin bi hêsanî saz bikin.

1. Rêzeya Debian/Ubuntu
Ger hûn Debian, Ubuntu an pergala din-based Debian bikar tînin, tenê bimeşînin:
apt-get update && apt-get install dos2unix -y
2. Red/RHEL series
Heke hûn CentOS an RHEL bikar tînin, hûn dikarin bikar bînin yum Ji bo sazkirinê:
yum install dos2unix -y
An jî, heke pergala we bikar tîne dnf(ji bo CentOS 8+):
dnf install dos2unix -y
3. ArchLinux
Bikarhênerên Arch bi gelemperî "geek" in û jêhatîbûnên DIY-ê yên xurt hene, lê heke we ew hîn saz nekiribe dos2unix, tenê bikar bînin pacman Ansou:
pacman -S dos2unix
4.macOS
Heke hûn bikarhênerek macOS-ê ne, hûn dikarin wê bi Homebrew saz bikin:
brew install dos2unix
Meriv çawa kontrol bike ka sazkirin serketî bû?
Piştî sazkirinê, vê fermanê biceribînin:
dos2unix --version
Ger ew jimareya guhertoyê bi guhdêrî derdixe, pîroz be, sazkirin serketî ye!
Ma ez bi rastî hewce dikim dos2unix?
Dibe ku we ferq kiriye ku bazdan file check_htaccess.sh Pişt re pergalê ev agahî da:
check_htaccess.sh: Bourne-Again shell script, Unicode text, UTF-8 text executable, with very long lines (327)
Ev tê vê wateyê ku skrîpta te jixwe skrîptek Unix-ê ya kodkirî bi UTF-8 ye , û bi teorîkî divê tu pirsgirêkên karakterên rêza nû tune bin.
Ji ber vê yekê hûn çima hîn dikin? dos2unix Çi?
Ji ber ku ne hemî pelan ew qas bi şens in!
Ger pelê ku we ji Windowsê veguheztiye tê de ye CRLF, dibe ku ew bibe sedema hin xeletiyên parskirina bernameya Linux, an jî çêbike bash Ez bi xeletî difikirim ku di nivîsara we de tiştek xelet heye.
Ji ber vê yekê, heye dos2unix, mîna ku bi we re Kêreke Leşkerî ya Swîsreyî ya zêde hebe, hûn dikarin her gav pelên formata Windows-ê tamîr bikin û îhtîmala xeletiyan kêm bikin!
Heke hûn nexwazin dos2unix saz bikin, rêyek din heye?
Bê guman! Di cîhana Linux de kêmasiya "çareseriyên malê" tune ye!
Rêbaz 1: Sed bikar bînin
sed Ew jî amûrek efsûnî ye, dikare bikuje CRLF Karaktera nû:
sed -i 's/\r$//' check_htaccess.sh
Rêbaz 2: Bikaranîna tr
tr Di heman demê de ew amûrek Unix-ê ya kevn e ku dikare jê bibe CR:
tr -d '\r' < check_htaccess.sh > newfile.sh
mv newfile.sh check_htaccess.sh
Rêbaz 3: Vim bikar bînin
Heke hûn bikar tînin ku bikar bînin vim, dikare tê dîtin vim Li vir çawa dixebite:
:set fileformat=unix
:wq
Kurte: dos2unix ne her tişt e, lê ew pir hêsan e!
gava ku hûn dibînin dos2unix: command not found Gava ku hûn xeletiyek bikin, netirsin!Hûn tenê "artifaktek veguherîna formatê" tune.
dos2unixBi giranî ji bo tê bikaranînPirsgirêka nû ya Windows-ê ya Unix-ê rast kir- vê amûrêJi hêla xwerû ve nehatiye saz kirin, ji ber vê yekê divê hûn bi xwe saz bikin
- Rêbaza sazkirinê pir hêsan e, pergalên cûda fermanên cûda hene (
apt-get,yum,dnf,pacman,brew) - Heke hûn nexwazin saz bikin, dikare were bikar anîn
sed,tr或vimbi destan tamîr bikin
Cara din ku hûn bi vê pirsgirêkê re rû bi rû bimînin, hûn ê zanibin ka meriv wê çawa çareser bike!
Ji bîr meke, ne girîng e ku gelek amûr hebin, girîng e ku meriv bizanibe wan çawa bikar bîne! Niha ku te ev "amûra veguherînê" fêr bûye, biceribîne! 🚀
Hêvîdarim, gotara "✅ dos2unix: çewtiya fermanê nehat dîtin? Ev fermana 1-rêzî di çend saniyan de çareser dike!" ku li ser bloga Chen Weiliang ( https://www.chenweiliang.com/ ) hatiye parvekirin, ji we re bibe alîkar.
Ji kerema xwe vê girêdana gotarê parve bikin: https://www.chenweiliang.com/cwl-32651.html
