Converting newline formatting from Mac to Windows Converting newline formatting from Mac to Windows windows windows

Converting newline formatting from Mac to Windows


Windows uses carriage return + line feed for newline:

\r\n

Unix only uses Line feed for newline:

\n

In conclusion, simply replace every occurence of \n by \r\n.
Both unix2dos and dos2unix are not by default available on Mac OSX.
Fortunately, you can simply use Perl or sed to do the job:

sed -e 's/$/\r/' inputfile > outputfile                # UNIX to DOS  (adding CRs)sed -e 's/\r$//' inputfile > outputfile                # DOS  to UNIX (removing CRs)perl -pe 's/\r\n|\n|\r/\r\n/g' inputfile > outputfile  # Convert to DOSperl -pe 's/\r\n|\n|\r/\n/g'   inputfile > outputfile  # Convert to UNIXperl -pe 's/\r\n|\n|\r/\r/g'   inputfile > outputfile  # Convert to old Mac

Code snippet from:
http://en.wikipedia.org/wiki/Newline#Conversion_utilities


This is an improved version of Anne's answer -- if you use perl, you can do the edit on the file 'in-place' rather than generating a new file:

perl -pi -e 's/\r\n|\n|\r/\r\n/g' file-to-convert  # Convert to DOSperl -pi -e 's/\r\n|\n|\r/\n/g'   file-to-convert  # Convert to UNIX


You can install unix2dos with Homebrew

brew install unix2dos

Then you can do this:

unix2dos file-to-convert

You can also convert dos files to unix:

dos2unix file-to-convert