Redirigiendo la salida estándar a un nuevo archivo añade extraño personaje hasta el final de nombre de archivo en cygwin

StackOverflow https://stackoverflow.com/questions/2001567

  •  18-09-2019
  •  | 
  •  

Pregunta

Tengo problemas con un script de shell en Cygwin. El comando específico que está causando el problema es el siguiente:

sed -e "s/6.0.[0123456789]\{1,\}/6.0.${REV}/g" "path/to/file/config.xml" > "path/to/file/config.xml.tmp"

El problema es que el archivo se crea con un extraño personaje al final, así que en vez de ser nombrado config.xml.tmp, es llamado "config.xml.tmp". Desde el comando "ls" y desde las ventanas de símbolo del sistema, se ve como "config.xml.tmp?"

Si funciono con el comando sed sólo de la cáscara, el archivo con el nombre correctamente, y el script funciona bien en Linux.

Cualquier idea de lo que podría estar mal? Gracias!

¿Fue útil?

Solución

Mi conjetura es que el archivo de script no tiene fines de línea UNIX. El carácter \r en el final de línea ventanas es lo que se van añadiendo al final de su nombre de archivo. Usted puede consultar con od o hexdump para ver si ese es el problema.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top