Creé un archivo de Bloc de notas en Windows y lo copié en Ubuntu. El archivo contiene algunas reglas de iptables. Después de hacer el archivo ejecutable usando chmod +x
y ejecutándolo, no funcionó.
Sin embargo, cuando creé un archivo Ubuntu ( gedit ) y copié el mismo contenido del archivo del Bloc de notas, lo hice ejecutable y lo ejecuté, funcionó.
¿Qué debo hacer para que el archivo del Bloc de notas se ejecute en Ubuntu?
Respuestas:
Windows y Linux tienen diferentes símbolos de fin de línea.
Puede instalar la
dos2unix
utilidad que lo arregla:Ejecútelo de esta manera:
También existe la
unix2dos
utilidad.La conversión de Windows a Linux también se puede hacer sin instalar ningún software especial
Nota: Los archivos de entrada y salida deben ser diferentes.
Una versión sed editará el archivo "en su lugar":
O escriba en otro archivo:
fuente
dos2unix winfile.txt linuxfile.txt
intenta convertir ambos archivos. Utilice este comandodos2unix -n winfile.txt linuxfile.txt
En Windows, debe cambiar el formato de fin de línea (EOL) en Notepad ++ a UNIX:
De esa manera, también funcionará en Ubuntu.
fuente
Windows usa CR + LF para saltos de línea. En Linux / Unix necesitas LF. Por lo tanto, debe reemplazar CR + LF en LF en su script:
Instalar en pc
dos2unix
Y corrige tu guión a través de
o vía
si necesita un archivo de salida diferente
Más información aquí.
desde
man dos2unix
fuente
Yo uso cygwin en Windows.
Abra el archivo con vi. Luego ingrese
guardará el archivo con caracteres de final de línea de Unix.
fuente
Puede usar Vim en modo Ex:
%
seleccione todas las líneass
sustituir\r
retorno de carrox
guardar y cerrarfuente