Eu não trabalho muito com o Windows, mas talvez sed esteja alterando seus marcadores de fim de linha. O comando file dirá qual codificação de texto está sendo usada. Além disso, você pode executar cat -e antes e depois de chamar sed ; se o arquivo for codificado para Windows, cada linha terminará com ^M .