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 +xy 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
dos2unixutilidad que lo arregla:Ejecútelo de esta manera:
También existe la
unix2dosutilidad.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.txtintenta convertir ambos archivos. Utilice este comandodos2unix -n winfile.txt linuxfile.txtEn 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
dos2unixY 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 dos2unixfuente
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íneasssustituir\rretorno de carroxguardar y cerrarfuente