Directorio de artigos
💻 dos2unix: non se atopou o comando? Corrixe este erro ao instante cun só comando, resolvendo os problemas de conversión de caracteres de nova liña de Windows a Linux . Comeza axiña! 🚀
Encontrácheste algunha vez con esta situación?
Correndo feliz nun terminal Linux dos2unix check_htaccess.sh, o sistema deulle unha forte labazada:
-bash: dos2unix: command not found
A túa mentalidade derrubouse de súpeto? !
Non é a fin do mundo, non é que o script que escribiches sexa velenoso, é só que o teu sistema non está instalado en absoluto. dos2unix esta ferramenta.
A continuación, imos tomar té e falar de por que ocorreu este erro e como solucionalo dunha soa vez.
Que é dos2unix? Por que o necesitas?
dos2unix A función principal deste comando éConverter un avance de liña de Windows (CRLF) para un avance de liña de Unix (LF).
Podes preguntar: "Que é tan sinxelo de converter novas liñas? Non son todas iguais que novas liñas?"
mal! Windows e Unix manexan ficheiros de texto igual que os zurdos e os destros, que escriben de diferentes xeitos pero poden escribir ambos.
Usos de Windows CRLF(retorno de carro + salto de liña), mentres que Unix só usa LF(nova liña).
Se transfire un ficheiro de texto de Windows a Linux, é posible que Linux o mire con desgusto e diga: "Irmán, o teu formato é incorrecto!"
Neste momento dos2unix Isto é útil, axudarache a converter ficheiros en formato Windows en formato compatible con Unix e evitará varios erros estraños.
Por que aparece "comando non atopado"?
É moi sinxelo, o sistema non ten este comando instalado en absoluto!
En moitas distribucións de Linux (especialmente sistemas de instalación mínima),dos2unix Non instalado por defecto, polo que se queres usalo, primeiro tes que instalalo.
Imaxina que queres reparar unha pechadura da porta, só para descubrir que non hai un desaparafusador na caixa de ferramentas. Como podes non romper?
Como instalar dos2unix?
A solución é sinxela! Sempre que teña dereitos de administrador, pode instalalo facilmente.

1. Serie Debian/Ubuntu
Se está a usar Debian, Ubuntu ou outro sistema baseado en Debian, simplemente execute:
apt-get update && apt-get install dos2unix -y
2. CentOSSerie /RHEL
Se estás a usar CentOS ou RHEL, podes usar yum Para instalar:
yum install dos2unix -y
Ou, se o seu sistema usa dnf(para CentOS 8+):
dnf install dos2unix -y
3. ArchLinux
Os usuarios de Arch xeralmente son "frikis" e teñen fortes habilidades de bricolaxe, pero se aínda non o instalaches dos2unix, só usa pacman Instalar:
pacman -S dos2unix
4.macOS
Se es usuario de macOS, podes instalalo con Homebrew:
brew install dos2unix
Como comprobar se a instalación foi exitosa?
Despois da instalación, intente executar este comando:
dos2unix --version
Se mostra o número de versión obedientemente, parabéns, a instalación foi exitosa.
Realmente necesito dos2unix?
Quizais notaches que correndo file check_htaccess.sh Despois, o sistema deu esta información:
check_htaccess.sh: Bourne-Again shell script, Unicode text, UTF-8 text executable, with very long lines (327)
Isto significa que o teu script xa é un script de Unix codificado en UTF-8 e, teoricamente, non debería haber ningún problema cos caracteres de nova liña.
Entón, por que segues finxindo? dos2unix Que?
Porque non todos os ficheiros teñen tanta sorte!
Se o ficheiro que transferiu desde Windows contén CRLF, pode causar algúns erros de análise de programas Linux, ou mesmo facer bash Creo equivocadamente que hai algo mal no teu guión.
Entón, ten dos2unix, é coma se tiveses contigo unha navalla suíza extra, podes reparar ficheiros en formato Windows en calquera momento e reducir a probabilidade de erros.
Se non queres instalar dos2unix, hai outro xeito?
Por suposto! Non faltan "solucións caseiras" no mundo Linux!
Método 1: use sed
sed Tamén é unha ferramenta máxica, pode matar CRLF Carácter de nova liña:
sed -i 's/\r$//' check_htaccess.sh
Método 2: Use tr
tr Tamén é unha antiga ferramenta Unix que pode eliminar CR:
tr -d '\r' < check_htaccess.sh > newfile.sh
mv newfile.sh check_htaccess.sh
Método 3: use vim
Se estás acostumado a usar vim, pódese atopar en vim Así é como funciona:
:set fileformat=unix
:wq
Resumo: dos2unix non o é todo, pero é moi cómodo.
cando vexas dos2unix: command not found Non te asustes cando cometas un erro!Só che falta un "artefacto de conversión de formato".
dos2unixUsado principalmente paraSolucionouse o problema de nova liña de Windows a Unix- esta ferramentaNon instalado por defecto, polo que debes instalalo vostede mesmo
- O método de instalación é moi sinxelo, os diferentes sistemas teñen diferentes comandos (
apt-get,yum,dnf,pacman,brew) - Se non queres instalar, pódese usar
sed,tr或vimpara reparar manualmente
A próxima vez que atopes este problema, saberás como resolvelo!
Lembra, non se trata de ter moitas ferramentas, senón de saber como usalas! Agora que dominas esta "ferramenta de conversión", proba! 🚀
Esperemos que o artigo "✅ dos2unix: erro de comando non atopado? Este comando dunha liña resólveo en segundos!" compartido no blog de Chen Weiliang ( https://www.chenweiliang.com/ ) che sexa útil.
Non dubides en compartir a ligazón deste artigo: https://www.chenweiliang.com/cwl-32651.html
