De repente cuando utilizamos archivos de texto por ejemplos hechos en Windows y queremos usar en Linux nos muestra nuestro molesto caracter  ^M
una manera rapida de quitarlos
cat main.cpp |tr -d "\r" > archivo.tmp
O en caso de que sean varios archivos podemos meterlos en un ciclo for
for i in $(ls -1);
do
cat $i|tr -d "\r" >temporal.tmp
mv temporal.tmp $i
done
y listo